硬件需求说明

1. 带宽

IM服务、音视频服务、对象存储服务需要流量带宽

1.0.1. IM服务

在线用户心跳是3分钟至4.5分钟一次,每次心跳来回4个字节,因此即使很大数量的用户在线,心跳的流量也是可以忽略不计的。流量主要消耗在发送消息,用户信息同步等功能上。需要预估峰值发送消息数,平均每条消息的大小,接受的次数。假如有10W高活跃用户(比如企业办公,上班时间都在线),最高考虑到有100人同时发送消息,消息平均发送到50人的群中,消息的大小平均是0.5K,那么峰值带宽就是0.5K x 100 x (1 + 49) = 2.5MB/S = 20mbps。

这个例子是个很极端的情况,上下行消息吞吐量达到了5000条/s,实际在非办公场景下,在线用户与总用户比重非常低,消息吞吐量会低非常多。 实际运行中可以根据流量的情况动态调节服务带宽

1.0.2. 音视频服务

多人音视频通话是采用p2p的,只有打洞失败时才会走中转消耗流量,实际大概有50%的情况是打洞失败需要走中转的,中转时视频每路带宽消耗140KBps,音频大概是20KBps。如果指标是同时支持100路视频通话,那么流量就是100 x 0.5 x 140 = 7000KBps = 56Mbps。

高级音视频是SFU模式,可以查看对应项目说明文档

1.0.3. 对象存储服务

媒体消息都是先上传到文件服务器,然后发送链接到对方的,这就保证了消息的尺寸比较小,避免了IM服务的流量压力。使用云对象存储服务的容量可以认为无限制,如果使用野火的私有对象存储,则需要计算需要用到的容量。

2. 内存

IM服务的内存参考,内存选择。其它demo服务可以使用很少的配置,需要自行评估。

3. CPU

数据库和IM服务要分开部署,社区版服务每核心每秒能处理300条消息的分发,专业版性能更高,可以参考野火性能测试。可以评估业务的高峰分发量,评估需要的CPU情况。数据库需要支撑每秒的协议数。其它demo服务可以使用很少的配置,需要自行评估。

2018 © wildfirechat.net 京ICP备18060403号-1 all right reserved,powered by Gitbook该文件修订时间: 2024-10-25 13:16:46

results matching ""

    No results matching ""