1

我们目前正在开发一个应用程序,该应用程序使用 pusher.com 来维护我们聊天应用程序上可用人员的列表。

不幸的是,我们的一些用户的 IE < 10(即没有 websockets)并且没有 flash,因此 pusher.com 将无法运行。此外,对于我们的使用来说,推送器变得越来越昂贵(推送器更多地用于具有大量数据的少量连接,而我们正在做相反的事情!)

因此,我正在寻找可以在 IE7+ 上使用或不使用 flash 的 pusher(托管或自托管)的替代方案。

到目前为止,这是我正在考虑的:

  • XMPP/BOSH
  • socket.io(自托管)
  • 酒馆

至于规模,我们可能必须每秒处理 100 多条消息和 10000 个并发用户。这里没有人玩过socket.io(或bosh),我们不希望有太多的维护工作(即处理许多服务器等)。所以 2 或 3 个自托管服务器是可以的,10+ 则不是。

有什么想法吗?

4

3 回答 3

3

不幸的是,我们的一些用户的 IE < 10(即没有 websockets)并且没有 flash,因此 pusher.com 将无法运行。

这是不正确的。Pusher(我为之工作)为旧版浏览器提供后备方案。基于 HTTP 的后备已经开始发布,与现有的 Flash 套接字后备一起使用。因此,旧版本的 IE 已经使用 Flash 套接字回退进行处理,但基于 HTTP 的回退将提供接近 100% 的浏览器覆盖率。

2012年11 月的 Pusher 通讯有以下内容:

我们一直很喜欢 WebSocket,从一开始它们就是我们的主要传输机制。虽然它们仍然是在应用程序之间发送数据的最佳方式,但我们有时不得不诉诸各种诡计来协商麻烦的代理。根据大众的需求,我们很快将通过将基于 HTTP 的传输添加到我们现有的后备选项中来支持我们的传统支持。

我们已经部署了一些适用于一组有限条件的临时端点,我们将在接下来的几个月内继续扩展此功能。如果您想以 beta 用户的身份尽早访问此内容,请联系 support@pusher.com。

在成本方面:

此外,对于我们的使用来说,推送器变得越来越昂贵(推送器更多地用于具有大量数据的少量连接,而我们正在做相反的事情!)

您是否联系过 Pusher 支持解释您的用例?可能会有折扣。

因此,我正在寻找可以在 IE7+ 上使用或不使用 flash 的 pusher(托管或自托管)的替代方案。

有一个实时网络技术指南,其中有一个很好的实时网络技术解决方案列表(它在我的网站上并且我维护它)。如果您想支持 IE,那么提供基于 HTTP 的回退的解决方案是最安全的选择。

于 2012-11-21T09:56:46.983 回答
0

我个人会选择socket.io。它支持 Internet Explorer 5.5+。

它支持各种传输并使用最合适的传输来确保浏览器兼容性,而无需使用特殊代码来处理每个浏览器。以下是网站上的运输清单:

WebSocket
Adobe® Flash® Socket
AJAX long polling
AJAX multipart streaming
Forever Iframe
JSONP Polling

您可以在此处查看浏览器支持的完整列表。

至于 BOSH,这里是关于BOSH vs Websockets的讨论。如果您继续使用 BOSH,您将错过现代浏览器支持的 Websockets 功能。

于 2012-11-20T13:33:59.753 回答
0

您应该查看ScaleDrone作为 Pusher 的实惠替代品。

于 2016-01-05T10:13:27.897 回答