凌鲨整体架构

本文详细介绍了IT系统架构中的两种关键通信协议:grpc,用于服务端与客户端的业务接口,以及mqtt,主要负责推送通知。同时涵盖了grpc协议的实现语言和协议定义,以及mqtt的用户验证机制和应用场景。
摘要由CSDN通过智能技术生成

整体架构

通讯协议

备注

webhook

用于接入外部系统的推送信息

grpc

服务端和客户端主要通讯方式(业务接口)

mqtt

推送消息,主要用于服务端和客户端数据同步

grpc协议

grpc协议定义放在proto项目中。在通讯上,服务端使用golang实现,客户端使用rust实现。我们额外生成了grpc的gorust的代码。

协议简介

协议包含基础设施,用户,项目,公共资源,扩展功能协议,通知/事件几个部分。

基础设施相关协议

协议定义

备注

fs_api.proto

文件存储

client_cfg_api.proto

用于获取服务端的能力列表

admin_auth_api.proto

管理后台验证

用户相关协议定义

协议定义

备注

user_api.proto

用户信息和验证

项目相关协议定义

项目接口可以分为知识库,项目管理,项目沟通,项目信息几个部分。

项目信息

协议定义

备注

project_api.proto

项目信息和设置

project_member_api.proto

项目成员

events_api.proto

项目相关的研发行为记录

events_subscribe_api.proto

项目相关的研发行为订阅

external_events_api.proto

项目外部信息接入

知识库

协议定义

备注

project_entry_api.proto

知识库内容入口

project_doc_api.proto

项目文档

project_code_api.proto

代码评论

project_idea_api.proto

项目知识点

api_collection_api.proto

接口集合

project_board_api.proto

信息面板

project_recycle_api.proto

知识库回收站

http_custom_api.proto

自定义http协议(接口集合)

项目沟通

协议定义

备注

project_bulletin_api.proto

项目公告

project_chat_api.proto

项目沟通

project_comment_api.proto

项目公共评论

project_watch_api.proto

关注信息

项目管理

协议定义

备注

project_issue_api.proto

任务/缺陷管理

project_requirement_api.proto

项目需求

project_sprit_api.proto

工作计划

project_testcase_api.proto

测试用例

project_alarm_api.proto

项目预警

short_note_api.proto

项目便签

公共资源相关协议定义

协议定义

备注

appstore_api.proto

微应用市场

group_api.proto

兴趣组信息

group_member_api.proto

兴趣组成员

group_post_api.proto

兴趣组帖子

dev_container_api.proto

研发环境软件包信息

docker_template_api.proto

docker compose模板

扩展功能相关协议定义

协议定义

备注

swarm_proxy_api.proto

swamg集群管理

trace_proxy_api.proto

链路追踪

k8s_proxy_api.proto

k8s集群管理

net_proxy_api.proto

网络透传

通知和事件相关协议定义

通知

协议定义

备注

notices/notices_board.proto

信息面板数据同步

notices/notices_entry.proto

内容入口数据同步

notices/notices_project.proto

项目信息数据同步

notices/notices_chat.proto

项目沟通数据同步

notices/notices_idea.proto

项目知识点数据同步

notices/notices_requirement.proto

项目需求数据同步

notices/notices_comment.proto

项目评论数据同步

notices/notices_issue.proto

项目任务/缺陷数据同步

notices/notices_testcase.proto

项目测试用例数据同步

事件

协议定义

备注

events/events_atomgit.proto

atomgit相关事件

events/events_gitlab.proto

gitlab相关事件

events/events_project.proto

项目事件

events/events_code.proto

代码评论相关事件

events/events_gogs.proto

gogs相关事件

events/events_requirement.proto

项目需求事件

events/events_entry.proto

内容入口事件

events/events_harbor.proto

harbor相关事件

events/events_testcase.proto

测试用例事件

events/events_external_event.proto

外部接入相关事件

events/events_idea.proto

知识点事件

events/events_gitee.proto

gitee相关事件

events/events_issue.proto

任务/缺陷事件

grpc协议调试

在凌鲨客户端内容提供了grpc调用的微应用,可以用来调试grpc调用。

mqtt协议

mqtt主要传递的是通知信息。 每个用户会有一个通道,地址 user/{用户ID} 。每个通道访问都需要验证,验证信息在登录时会发送给客户端。

  • 27
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凌鲨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值