2010-07-31 7 views
3

클라이언트가 서버와 함께 주제에 관심을 등록하고 관심이 등록 된 후 서버에서 비동기 알림을 수신 할 수있게 해주는 RESTful API를 제공하는 메커니즘을 구현하려고합니다. 엔터프라이즈 (메시징) 아키텍처에서이를 게시/가입 패턴이라고합니다.서버 측 푸시를위한 확장 가능한 솔루션은 무엇입니까?

데스크톱 응용 프로그램을 사용하면 쉽게 이해할 수 있지만 웹 응용 프로그램을 사용하면 더 어려워집니다.

게시/구독 패턴을 웹 응용 프로그램에 적용 할 수있는 (가능한 오픈 소스) 프레임 워크 또는 라이브러리가 있습니까?

서버 측 기술은 C, C++, PHP, Python, Ruby 언어 중 하나 일 수 있습니다. http://code.google.com/p/pubsubhubbub/

답변

3

는 PubSubHubbub를 프로토콜에서보세요 특정 대상에 대한 알림을 원하는 많은 구독자 (사람/응용 프로그램)를 보유하고 있지만 다른 한편으로는 어쨌든 끌어 오기 기술을 고려한 대상은 거의 없습니다.

RSS를 사용하는 경우에도 Atom은 상당히 성공적입니다. 그 이유는 가입 한 사람의 서버에 관리 권한을 부여하거나 더 이상 관심이없는 사람 (오랫동안 클라이언트가 오프라인 상태)을 찾거나 모든 데이터를 구독자에게 가져 오는 메커니즘을 가질 필요가 없기 때문입니다. 푸시를 사용하면 서버에서 약간의 작업 만 수행해야하며 클라이언트는 매번 작은 양의 데이터 만 가져옵니다.

당연히 CPU와 소프트웨어 유지 보수 비용이 상당히 비싸지 만 당연히 가격은 약간 더 비쌉니다.

+0

마찬가지로 나는 여기에서 묻기 시작했다. 나는 비슷한 내 글쓰기를 생각하고 있었다. 링크를 주셔서 감사합니다, 그 +1! – morpheous

0

나는 STOMP 프로토콜과 그 파이썬 클라이언트 (내가 stomp.py를 사용함)를 살펴볼 것을 제안한다. 그것은 당신의 모든 필요에 부합해야합니다.

+0

흠, 오직 문제는 내가 생각하고있는 클라이언트 (웹 브라우저)가 파이썬 AFAIK (플러그인이 없으면 적어도 물고기의 다른 주전자)를 실행할 수 없다는 것입니다. – morpheous

+0

브라우저는 파이썬을 실행할 필요가 없으며, 예를 들어 브라우저에서 웹 소켓을 허용하는 한 자바 스크립트 STOMP 클라이언트를 실행할 수 있습니다. 서버와 동일합니다 (다른 언어로도 구현 가능). STOMP는 단지 사양에 불과합니다. 자바 스크립트 STOMP 클라이언트가 재미있어 보입니다. 여기에 대한 몇 가지 흥미로운 페이지 : http://www.kaazing.org/confluence/display/Doc/JavaScript+STOMP+Client+How-To – marbdq

관련 문제