蘑菇街TeamTalk源码流程思维导图

最近对蘑菇街的TeamTalk源码比较感兴趣,因此抽了部分时间去学习它的源码,获益匪浅,该篇文章列出了TeamTalk Login_Server的处理流程的思维导图,希望帮助大家阅读Login_Server的代码时有个宏观的了解。

当前的TEAMTALK ClientListen已经废弃了,客户端通过HTTP 协议想Login_Server申请一个负载最小的Msg_Server。Msg_Server在开始的时候会向Login_Server发起连接,报告当前Msg_Server的负载情况,并且在用户登录和退出的时候想Login_Server更新负载情况;Login_Server保存当前Msg_Server的负载情况。因此Login_Server就相当于一个负载均衡器。


Windows下,TeamTalk的时间分发器是采用Select机制来判断当前连接是否可读可写,在Linux下是采用EPOLL机制,具体使用方法可参考其他文档。

Select 调用返回成功,ReadSet有数据可读

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值