应用服务性能

时间:2014-01-19 14:45:25

标签: spring websocket

我正在开发一个分布式系统应用程序,除了其他东西之外,它还使用实时消息来聊天服务并将通知推送到许多并发用户通知。

首先,我的实际项目系统是一个Spring Framework Webservices,另外两个服务器,一个用于实时消息服务,另一个用于推送通知服务的Google Cloud Messages。

现在,我正在考虑通过Spring Framework Webservices实现自己的实时消息传递和推送通知。

在这里,我对应用程序性能有所怀疑,Android / iOS聊天和通知服务总是会在Movile Services上运行(比如facebook,twitter,whatssap ......)。以少于1000的少数并发用户为例,我毫不怀疑是否需要一个低功能服务器来运行系统,但是,如果将是多个并发用户超过10000运行持久性websockets ...有人可以告诉我功能服务器来运行它?

对于每个Websocket连接,Java起来一个持久的新线程,直到关闭连接或者只是通过服务器向每个Websocket请求/响应获取一个新线程?

上述两种实施方式中的哪一种更好?

提前感谢您和最好的问候。

2 个答案:

答案 0 :(得分:1)

既不是;)您将需要一个服务器,每个连接或请求不需要新线程,但每个CPU核心。并做异步网络。例如。 Netty或Jetty。

答案 1 :(得分:0)

Play Framework非常适合:完全异步/非阻塞和非常好的websocket支持。