fanxing.md 2.1 KB

繁星重构设计说明

  1. 在繁星1.0的设计过程中繁星通过Websocket和平台连接,繁星即是服务端接收客户端消息也是客户端向客户端发送消息。
graph LR
 yw((运维))
 fx[dev_fx]
 style yw fill:#ff99ff,stroke:#fff,color:#fff
 style fx fill:#33ffff,stroke:#fff,color:#333
 yw--ws-->fx
 fx--ws-->yw
为了更好的解耦平台让繁星成为一个独立的服务存在利用中间件来实现解耦
graph LR
 yw((运维))
 k(kafka)
 fx[dev_fx]
 style yw fill:#ff99ff,stroke:#fff,color:#fff
 style fx fill:#33ffff,stroke:#fff,color:#333
 style k fill:#ff3333,stroke:#fff,color:#fff
 yw-->k-->fx
 fx-->k-->yw

2. 去除base64图片传输引入HDFS将base64转换成url发送给推送服务

graph LR
 yw((运维))
 resv[推送服务]
 store[存储服务]
 other[第三方服务]
 style yw fill:#ff99ff,stroke:#fff,color:#fff
 style resv fill:#ff3333,stroke:#fff,color:#fff
 style store fill:#33ffff,stroke:#fff,color:#333
 style other fill:#33ffff,stroke:#fff,color:#333
 yw--http-->resv-->store
resv-->other

3.引入新的架构方式

(1)采用spring cloud 替代现有的微服务架构

(2)应用自带的gateway替换掉原来的配置服务

(3)采用HDFS替换掉原有的图片服务

(4)数据库由原来的postgres和MongoDB合并到postgres(解决大量数据查询MongoDB查询速度过慢问题)

整理后的结构图

graph TB
 yw((运维))
 resv[转发服务]
 k(kafka)
 store[存储服务]
 other[第三方服务]
 dev[配置服务]
 stream[推流服务]
 web[客户端]
 gatewy[网关]
 code[code服务]
 org[组织服务]
 auth[认证服务]
 H[HDFS]
 style yw fill:#ff99ff,stroke:#fff,color:#fff
 style resv fill:#3fafa3,stroke:#fff,color:#fff
 style store fill:#33ffff,stroke:#fff,color:#333
 style other fill:#33ffff,stroke:#fff,color:#333
 style k fill:#ff3333,stroke:#fff,color:#fff

 web-->gatewy-->auth
 auth-.->org
 auth-.->code
 auth-.->store
 auth-.->dev
 auth-.->stream
 dev-->k-->yw
 yw-->k
 yw-->resv--base64-->H
 H--url-->resv
 resv-->store
 resv-->other
 k-->dev