gpt4 book ai didi

java - 使用 java 8 的 google appengine 的 Websocket 或 native 套接字?

转载 作者:行者123 更新时间:2023-11-30 02:09:53 25 4
gpt4 key购买 nike

我目前在 Google AppEngine 上使用 HTTP 长轮询作为基于 java 8 的 web 应用程序(标准环境)的用户消息传递和通知系统。我想用 Socket API 来实现这个。

关于Google's documentation关于它提到的 Java Sockets API:

Important: Applications in the Java 8 runtime can use native Java sockets with no restrictions, including the use of NIO classes and their methods.

所以我有点困惑我到底应该使用什么,websockets 还是 native java 套接字?有区别吧?显然,Java 8 运行时极大地改变了套接字 api,这就是为什么可以使用 native java 套接字而不是 websockets 的原因吗?

最佳答案

Java 7 运行时,which is now deprecated ,是一个特殊的沙盒环境。因此,它在 JVM 上可以执行的操作方面有很多限制,例如,关于线程、标准 Java 库中的可用类、套接字、安全管理器等。

Java 8 运行时具有截然不同的基础架构,并且大多数限制已被取消。它支持标准公共(public) Java 库(当然包括 native Java 套接字和 NIO),而不仅仅是 Java 7 运行时中的白名单子(monad)集。您链接的文档中的引用只是宣传 Java 8 运行时相对于 Java 7 运行时的优越性。

我想说,是否使用 native Java 套接字由您决定。至少使用标准 Java 库不会是一件坏事。

编辑:您可能也对这些附加文档感兴趣:

关于java - 使用 java 8 的 google appengine 的 Websocket 或 native 套接字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50415605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com