浅谈聊天系统架构设计( 二 )


接下来看语音视频和文件消息的流程,具体工作方式以客户端A发送文件给客户端B为例,A首先把文件通过HTTP方式上传到http服务器,文件上传完成后http服务器保存图片到文件系统,并把文件的全局路径返回给上传的客户端A,客户端A把返回回来的路径作为文本消息再发送给目标客户端B,目标客户端B收到文本消息后解析出文件的全局路径然后下载,这时整个文件传送过程完成 。
由上所述,这个架构满足了提出来关于聊天系统需要满足的要求,并解决的了所有提出的问题,所以这是一个可用的聊天系统架构 。如果一个小范围内部使用的系统,用户量和消息量都不大的情况下,可以按照这个架构去实现一个即时聊天(IM)系统 。其实微信这种量级的系统抽象出来,结构上也差不了太多,只是中间采用了很多分布式系统来提高处理速度和稳定性,下一步我们来做分布式架构的即时聊天(IM)系统 。




推荐阅读