[T.3] 团队项目:团队基础设施及 DevOps 准备
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | 课程社区 |
| 这个作业的要求在哪里 | 作业要求 |
| 我在这个课程的目标是 | 组织队员开展讨论,通过充分调研,确定团队基础设施以及准备DevOps。 |
| 这个作业在哪个具体方面帮助我实现目标 | 通过讨论确定了团队基础设施以及DevOps,为后续开发打下了基础。 |
服务器
订单详情

具体配置
| 栏目 | 详情 |
|---|---|
| 厂商 | 腾讯云 |
| 地域 | 北京 |
| 计费方式 | 3月,包季:46.43元 |
| CPU | 2核 |
| 内存 | 4G |
| 带宽 | 5M |
| 系统盘和数据盘 | SSD 60G,没有提供数据盘 |
| 操作系统 | Ubuntu 24.04 LTS |
选择一台服务器的原因
在项目开发和发布初期,一台服务器已经在很好的满足服务需求的前提下,控制好项目的成本投入。
相关配置选择原因
- 厂商选择:腾讯云拥有广泛的基础设施和强大的稳定性,同时网络延迟低,服务可靠,适合我们游戏的实时联机需求。同时,腾讯云对游戏行业有深度优化方案,文档完善、支持丰富。此外,腾讯云的学生服务器价格实惠,性价比较高,经多方对比,最终选择腾讯云。
- 地域:项目开发和主要玩家都主要集中分布在北京,选择北京区域可以进一步降低网络延迟,提升玩家游玩体验。
- 计费方式:相较于其他的收费方式,包季收费可以在很好的满足当前开发周期内的可能的开发与测试波动带来的费用变化,进而很好的控制项目开发初期的成本。
- 2核CPU和4G内存:由于服务器需要处理多玩家同步、匹配、出收牌逻辑等任务,2核CPU已经能够很好地并发处理这些需求,同时有高性价比,相应的内存也是项目初期开发的合适选择。
- 带宽5M:单局玩家数量有限,5M带宽可以很好的覆盖正常游戏交互与数据传输需求,同时满足多人房间同时在线的需求。
- 系统盘和数据盘:60G系统盘,提供高速读写性能,加快加载速度、部署流程等任务,该容量能够很好的支持相关工作。由于当前开发阶段数据存储需求有限,因此单系统盘即可满足需求,后续如需持久化存储可灵活扩容挂载数据盘。
- 操作系统:团队运维成员对于ubuntu系统较其他系统更加熟悉,且使用该系统的用户基数大,出现相关问题搜索更可能搜索到相对应的解决方案。
团队沟通,协作与代码管理
团队沟通的平台和方式
我们选择了飞书作为任务管理与协作沟通的平台,主要是因为其集成了包括即时通信、云文档协作和任务看板等各式各样的功能,能够满足我们针对平台开发过程中的任务分工、进度同步和团队写作的各种需求。且其界面清晰易懂、使用便捷,支持多端同步讯息和成员权限管理,适合小型开发团队进行高效、灵活的协作与开发。

实时交流
微信+飞书,建立了两个群,有问题即时沟通,十分有效。同时使用飞书作为团队实际的开展线上会议的平台,其拥有ai总结会议内容的能力。
线下会议
固定每周日例会,根据实际情况可增加临时会议。
代码管理工具
Git。便于进行分支管理与历史日志追踪,便于团队管理不同开发人员进度的代码。
托管平台
Github。其提供了完善的托管与协作服务支持,包含了Pull Request审查机制、团队协作功能以及Actions自动化工作流等,便于实现CI/CD策略。
采用前后端分离分仓库的方式进行代码管理,这样可以提高前后端的并行开发效率。


CI/CD
触发脚本
简单编写了一个连接服务器主机的简单测试脚本如下:
name: "test"
on:
[push]
jobs:
Test:
runs-on: ubuntu-24.04
steps:
- name: "test"
uses: appleboy/ssh-action@v1
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USERNAME }}
password: ${{ secrets.SERVER_KEY }}
port: 22
script: |
whoami
cd ~
pwd
echo "Successfully executed commands"
触发截图


浙公网安备 33010602011771号