在简谈即时聊天系统设计一文中我们架构了一个可用的聊天系统整体架构,这个架构可用,但是真正的实用角度来说,只能应付承载人数和发送消息较少的情况。本问我们来分析前面架构对于大用户量和大消息量所遇到的问题并给出新的高并发量和高消息量的架构。

根据此架构图,大量的用户会产生大量的连接和所有http的请求压力,而这些压力进而带来对数据库和存储的访问读写压力;大量的消息带来的就是引起gate服务器的消息收发处理和core服务器处理的压力。所以应该优化如下三个方面:
- 对于三个http服务器(http用户服务器,http离线消息服务器,http文件服务器)的访问速度和访问量的提升。
- Gate服务器管理更多的连接,更多更快的收发的消息,core服务器能处理更多的消息校验和转发。
- 服务器之间响应消息的速度提升。
- 提升对数据库的响应能力。
针对上面的问题,做出了如下的优化结构,如图:

本文分析了原有即时聊天系统在高并发、大消息量场景下的问题,并提出了优化方案:使用http服务器集群,Gate和Core服务器改为集群并引入高速交互区和消息队列,以及利用内存数据库和NOSQL提升响应速度。这种优化设计简化了架构,增强了系统的可扩展性和处理能力。
最低0.47元/天 解锁文章
3789

被折叠的 条评论
为什么被折叠?



