趁着十一后,事情相对少,我来总结一下直播间的后台的整体结构。
首先,直播间后台都是基于公司的一整套分布式框架来进行开发的。内部的网络层代码都是基于C++实现的,封装了epoll的 非阻塞的网络操作。详细代码的deamo可以看我的写的相对来说比较清晰的一个。
一、整体架构
这个结构是相对来说比较简单了,只抽取了结构中比较重要的层,直播间客户端,首先从service manager 获取proxy层的列表,然后通过uid 对其hash等方式,进行选择具体的机器接入层,
而我们的进程,也是根据uid和具体的proxy连接。
当我们点对点的发消息的时候,会按照原路返回,因为serviceproxy保存了客户端的连接。
因为直播间属于公会频道的那种方式,如果一旦广播频道消息,那么这个频道内的所有用户都需要知道,有时候一个频道要几万甚至几十万,所以,会有一个专门的广播服务进行监控。
二、直播间娱乐后台,目前YY娱乐后台处在了ServiceProxy进程后边。由于直播间娱乐的业务发展的比较快,为了让业务更加可控,娱乐后台又增加的Ent层。
请看下一个图。