EC2上的Openfire性能

时间:2012-02-15 11:12:03

标签: amazon-ec2 xmpp ejabberd openfire tigase

我们计划在移动应用中引入实时聊天功能。当然,我们将采用XMPP方式。

任何人都可以了解最大并发用户数的统计数据Openfire是否支持现实世界中不同大小的EC2实例(Windows服务器)?

我们正在研究从22500个并发用户到75000个并发用户的数字,具体取决于针对此新的实时聊天功能预测的应用下载和用户适应性的增长模式。时间范围=接下来的12个月。

从我到目前为止所做的任何谷歌搜索来看,看起来Openfire可能不是最好的选择,因此,随着时间的推移,这些数字可以在ec2的单个实例上得到支持吗?即:我们开始托管较小的实例,并随着负载需求不断增加实例大小。

在扩展时,Ejabbered似乎是最好的选择但是因为我们需要具备erlang技能才能扩展它,这使得我们成为一个艰难的选择。另一个替代是tigase是java,所以我们可以很容易地扩展它但是如果Openfire可以在接下来的12个月左右通过扩展和扩展来为我们工作,我们很乐意现在使用它,看看这个有多好新的聊天功能被接受了。易于管理的首要原因。

最后,如果您可以在用户离线时帮助将SaMP / PaaS提供商上的链接用于XMPP聊天+推送通知到移动设备,那就太棒了。我们与quickblox.com取得了联系,但他们的企业产品目前对我们来说似乎很昂贵。如果我们采用SaaS / PaaS方式,我们希望获得100%的数据所有权和可移植性。

4 个答案:

答案 0 :(得分:2)

在单个服务器上有几个并发用户的Openfire handling those and larger numbers的引用。

2007年document on scalability显示版本3.2支持50000个用户。目前的版本是3.7.1。不要忘记,这也意味着比你今天可能运行的任何东西都慢得多的机器。

您还必须考虑将要使用的XMPP的哪些功能,但简单的消息传递应该能够轻松处理您所指的数字。

答案 1 :(得分:1)

你提到的数字应该很容易被ejabberd处理。

我不确定你想如何“扩展”ejabberd。所有服务器都可以处理多用户聊天和消息传递,当然还有ejabberd。此外,如果您正在考虑自定义协议,可以使用您选择的语言编写这些协议,并将其作为XMPP组件连接到ejabberd。

你唯一可能遗漏的是一个网络界面(ejabberd有,但它相当有限),但如果你希望通过一个应用程序的Web UI管理东西,你需要再次思考;)

答案 2 :(得分:0)

如果您想使用ejabberd,您可以随时获得ProcessOne的支持。 这是ejabberd的另一个好处,因为如果您想要/可以负担,它可以在商业上得到支持。

答案 3 :(得分:0)

Android Push Notification是一个很好的解决方案。

借助Android-Push服务,您(Android开发人员)可以直接向已安装您应用的用户发送消息。您只需在应用中添加一个代码段,然后发布到特定网址即可覆盖您的应用用户,即使您的应用在手机上处于非活动状态也是如此。

<强>功能

<强>免

免费,除非您的应用需要大量推送。当然,您可以支付更多的费用和更快的技术支持。

轻松

非常容易集成到您的应用中 超级简单的推送到应用程序:只需发送一个URL请求 没有C2DM限制,您不必拥有使用推送服务的Gmail帐户 云服务,无需设置自己的推送服务器

<强>有效

手机电池电量低,网络消耗低 跟踪用户交互,了解用户对您推送的反应