对现有应用程序/系统使用 BOSH/类似技术

发布于 2024-08-25 08:41:22 字数 380 浏览 4 评论 0原文

我们有一个现有的系统,通过 http (apache/ssl) 连接到后端并轮询服务器以获取新消息,不用说我们存在可扩展性问题。

我正在研究删除此轮询并遇到了 BOSH/XMPP,但我不确定我们应该如何采用 BOSH 技术(使用长期存在的 http 连接)。

我看到可用的库很少,但整个事情看起来很臃肿,因为我们不需要好友列表等,只是想通知客户端可用的消息。

客户端是用 C/C++ 编写的,可以在大多数操作系统上运行,因此这是一个重要因素。服务器是用Java编写的。

bosh 会导致大量 httpd 进程吗?由于它必须使所有客户端保持连接,因此对此有何限制。我们还计划迁移到 64 位 JVM/apache,在这种情况下客户端的最大限制是多少。

有什么提示吗?

We've an existing system which connects to the the back end via http (apache/ssl) and polls the server for new messages, needless to say we have scalability issues.

I'm researching on removing this polling and have come across BOSH/XMPP but I'm not sure how we should take the BOSH technique (using long lived http connection).

I've seen there are few libraries available but the entire thing seems bloaty since we do not need buddy lists etc and simply want to notify the clients of available messages.

The client is written in C/C++ and works across most OS so that is an important factor. The server is in Java.

does bosh result in huge number of httpd processes? since it has to keep all the clients connected, what would be the limit on that. we are also planning to move to 64 bit JVM/apache what would be the max limit of clients in that case.

any hints?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甜妞爱困 2024-09-01 08:41:32

我要指出的是 BOSH 与 XMPP 是分开的,因此不涉及“好友列表”。 XMPP-over-BOSH 就是您所想到的。

查看 collecta.com 和相关博客文章(可能由 Jack Moffitt)了解他们如何使用 BOSH(以及 XMPP)向大量用户提供实时信息。

至于 Apache 的扩展问题,我不知道 - 大概每个连接都使用很少的资源,因此您可以增加每个 Apache 进程的连接数。但您也可以查看上面 BOSH 页面上提到的一些连接管理器技术(例如旁遮普语)。

I would note that BOSH is separate from XMPP, so there's no "buddy lists" involved. XMPP-over-BOSH is what you're thinking of there.

Take a look at collecta.com and associated blog posts (probably by Jack Moffitt) about how they use BOSH (and also XMPP) to deliver real-time information to large numbers of users.

As for the scaling issues with Apache, I don't know — presumably each connection is using few resources, so you can increase the number of connections per Apache process. But you could also check out some of the connection manager technologies (like punjab) mentioned on the BOSH page above.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文