分享
GuGoTik - 答辩汇报文档
输入“/”快速插入
GuGoTik - 答辩汇报文档
2023年8月24日创建
820
2004
11
一、项目介绍
本项目是基于
Gin
+
gR
PC
框架开发的微服务模式的
分布式
抖音后端服务,具有评论
情感分析
、
AI
聊天、视频智能推送和热度视频引流、集成
AGI
等特色。项目基于
Kubernetes
进行容器编排构建,使用
Envoy
作为服务网格代理,使用
Redis
作为缓存,Consul
作为服务发现注册中心,使用
RabbitMQ
作为事件总线和消息管道等。项目拥有良好的可观测性,使用 Prometheus、Victoria Metrics、Grafana
进行项目监控,Pyroscope
进行性能检测,Jaeger
进行全链路追踪等,对运行维护人员友好,并且使用了
ElasticSearch
对消息
和日志
进行
索引
,使用
Fluentd
对日志收集,可以对数据做进一步处理和分析。
本项目积极拥抱云原生,采用云原生应用架构,对于架构 - 服务 - 部署 均采用贴近云原生的模式。
📌
请在 Github 给我们一个 Star,谢谢~
项目仓库地址:
https://github.com/GuGoOrg/GuGoTik
项目服务地址:
注意:由于项目部署的服务器网络存在不稳定的现象,所以使用 App 的时候偶尔会出现卡顿、视频加载慢、长视频上传失败等问题。但是如果在本地使用 Docker Compose 完成编排并连接,不会出现此类问题。
https://gugotik.endymx.qzwxsaedc.cn/
项目答辩PPT文档:
分布式微服务抖音后端 GuGoTik_v1.3.pptx
📌
为了演示需要,项目在目前提供的测试环境调快了
ChatGpt
小助手 推荐视频的速度,可能每 5-10 min,小助手便会发送推荐的消息至对应的用户以供测试需要。正常情况下此功能应该是每晚 20:00 定时触发。
二、项目分工
2.1
代码分工
团队成员
主要贡献
EpicMo
Scrum Master
,DevOps,架构设计,认证业务,用户业务,推荐系统,基础组件开发,代码审查
,
质量保证
,性能测试,
文档撰写
Maples
评论业务,AGI集成,中间件开发,视频处理业务,质量保证,性能测试,代码审查
,文档撰写
Attack865
视频发布业务,视频流业务,视频处理业务
XFFFCCCC
聊天业务,点赞业务,性能优化,代码审查
amazing-compass
关系业务,测试数据填充
2.2
项目部署
考虑到项目中本身微服务较大且依赖较多基础服务,实际运行时服务总量在25+,因此项目采用三种部署模式:
•
Docker 自运行:当代码推送到
Github
时,会自动对
Master
分支代码进行 Docker 镜像构建,允许开发者本地测试功能。
但是随着服务开发的完善,较多服务由于依赖下层服务导致无法直接完成启动,因此这种部署方式已不再使用。
•
Docker Compose 编排:当本地修改代码后,通过 Docker Compose 进行编排部署,Standalone 模式下 Docker Compose 会根据配置快速完成镜像构建,并使用预先设置的配置进行构建容器运行,方便测试。
•
Kubernetes 编排:当分支完成代码修改后,对于构建分支的每一次 Merge 操作会推送到
CI
/
CD
流程中,自动完成云端镜像的构建并推送到 Kubernetes 集群完成部署操作。
2.3
项目进步同步
•
飞书会议
:通过飞书会议定期同步进度
•
敏捷面板:早期采取
飞书云文档
作为
敏捷开发
的进度面板,来同步信息: