2014-01-19 7 views
0

다른 시스템 외에 하나의 분산 시스템 응용 프로그램을 개발 중이며, 실시간 메신저를 사용하여 서비스를 채팅하고 많은 동시 사용자 알림에 푸시 알림을 푸시합니다.응용 프로그램 서비스 성능

첫째, 내 실제 프로젝트 시스템 알림 서비스를 추진하는 또 다른 두 개의 서버, 실시간 메시징 서비스로 하나, 다른 Google 클라우드 메시지와 함께 하나의 스프링 프레임 워크 웹 서비스입니다.

지금, 나는 내 자신의 실시간 메시징을 구현하고 내 스프링 프레임 워크 웹 서비스를 통해 푸시 알림을 할 생각입니다.

여기에서 나는 응용 프로그램의 성능, 안드로이드/아이폰 OS 채팅 및 알림 서비스에 allways 최대 Movile 서비스에있을 것입니다에 대한 몇 가지 의심이 (같은 페이스 북, 트위터, whatssap ...). 예를 들어 1000 명 미만의 동시 사용자가 거의 없다고하더라도 시스템을 실행하는 데 필요한 기능이 부족할 것이라는 점은 의심의 여지가 없지만 지속적인 동시 웹 소켓을 실행하는 동시 사용자가 10000 명 이상이면 ... 그것을 실행하는 서버 기능? 자바는 밀접한 관계까지 하나 개의 영구적 인 새로운 Thread를 받고 각 웹 소켓 연결의

각 웹 소켓 요청/응답에 서버가 하나 개의 새로운 스레드를 얻고있다?

위의 두 구현 중 어느 것이 더 뛰어 났습니까?

미리 감사드립니다.

답변

1

어느 쪽도) 당신은 연결 또는 요청에 따라 새 스레드를 필요로하지 않는 서버를 원하지만 CPU 코어 당합니다. 또한 비동기 네트워킹을 수행하십시오. 예 : Netty 또는 Jetty. 전체 비동기/비 차단하고 아주 좋은 웹 소켓 지원 :

+0

Tomcat을 해당 목록에 추가 할 수 있습니다. JSR-356 기반 WebSocket 구현은 Servlet 3.1 비 차단 IO 기능을 기반으로합니다. –

0

플레이 프레임 워크는 이것에 대한 완벽한 적합 할 것이다.