B站弹幕系统架构——GOIM解读

Posted thinheader

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了B站弹幕系统架构——GOIM解读相关的知识,希望对你有一定的参考价值。

架构图

技术图片

 

 

说明

1.logic启动http服务器, 接受http请求,用于将数据推送到kafka以及获取在线用户信息,websocket身份校验

2.comet组件起动webdocket/tcp服务, 管理连接, 并负责将数据推送至指定连接

3. job组件订阅指定kafka指定频道的消息信息, 开启管道监听(将获得的数据推送到comet当中某个链接上)

  从discovery当中找到comet组件

4. discovery负责监控以上组件的活动状态

代码结构:

由于作者应该是修改了项目文件目录结构,导致按照现在的readme文档运行是找不到对应的目录的。

技术图片

 

 说明:(个人理解,不一定准确。欢迎指正)

goim/api:主要定义了comet和logic模块用到的protocal buffer协议。

goim/benchmarks:演示了小部分的使用基准。

goim/cmd:这一部分对应了作者GitHub上readme文档的运行示例部分(如图)

技术图片

 

 少了个router文件夹。

goim/docs:分模块文档。

goim/examples:一个前端演示demo,具体实现了什么没看。

技术图片

 

 这三个分别是,基础模块包,依赖包,外部依赖运行脚本。

 

以上是关于B站弹幕系统架构——GOIM解读的主要内容,如果未能解决你的问题,请参考以下文章

Android弹幕实现:基于B站弹幕开源系统

Android弹幕实现:基于B站弹幕开源系统-重构

b站安卓客户端弹幕透明度怎么调

b站电脑如何关闭弹幕

震惊!一菜鸟竟用pyecharts分析B站弹幕作出这么靓的图~

实现B站弹幕很难么?这个开源项目了解一下