首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >提高ejabberd性能

问提高ejabberd性能
EN

Stack Overflow用户
提问于 2014-09-23 10:27:15
回答 1查看 1K关注 0票数 2

我在一个简单的场景中测试ejabberd的性能:连接/认证到一个有两个客户端的ejabberd服务器,数据库在另一台机器上。大多数Ejabberd模块都是关闭的。我的整合连接目标是500k。当连接数小于10k时,每秒新建连接数为1000+;当连接数在100~160k之间时,TPS为400+;当连接数大于400k时,TPS降至100-。请看图表。

测试过程中CPU使用率约为70%~95%。

如何提高性能?包括在高负载时增加TPS和减少CPU使用率。

系统: CPU: 6核,12线程内存:32 12网络: LAN

Ejabberd:版本: 14.05

Erlang: R16B03

构建配置:./configure --enable-nif --enable-odbc --enable-mysql --enable-pam --enable-zlib --enable-stun --enable-json --enable-iconv --enable-debug --enable-json --enable-smp-support

MAX_PROCESSESS: 15000000

MAX_PORTS: 5000000

​

​

EN

回答 1

Stack Overflow用户

发布于 2015-08-02 18:22:59

XMPP服务器性能的优化,包括ejabberd,高度依赖于用例。您真的需要通过监视进程队列来找到瓶颈,找出您的限制因素是什么,然后转到下一个瓶颈。

我还建议您确保运行最新的ejabberd。每个新版本都有一系列的优化,在最新的版本中,你面临的一个特定的瓶颈可能已经消失了。

为了给你一个想法,ejabberd 15.07在内存、延迟和CPU方面的效率是ejabberd 2.1的2到3倍,而ejabberd 2.1只有三年的时间。

您还应该确保使用的也是最新的Erlang版本。Erlang的每个版本都提供了关于锁的更多优化,特别是在SMP服务器上,使用最新的Erlang版本也可以提供极大的帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25985932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档