[T.3] 团队项目:团队基础设施及 DevOps 准备
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | 2025年春季软件工程(罗杰、任健) |
| 这个作业的要求在哪里 | [T.3] 团队项目:团队基础设施及 DevOps 准备 |
| 我在这个课程的目标是 | 学习软件工程的基础知识,和团队成员们实践各种软件工程的方法与流程,开发一个让我们值得骄傲的项目 |
| 这个作业在哪个具体方面帮助我实现目标 | 确定了团队开发的基础设施以及团队项目如何管理 |
服务器
腾讯云服务器


| 配置项 | 实际选择内容 | 选择原因与依据 |
|---|---|---|
| 厂商 | 腾讯云(Tencent Cloud) | 国内一线云厂商,性能稳定,服务完善;学生、开发者和中小型团队优惠政策多,适合初期开发、测试和中等规模部署。 |
| 地域 | 华东地区(如:上海) | 靠近目标用户群体,访问延迟低、速度快;资源充足,服务成熟;是腾讯云的核心数据中心之一,适合部署面向全国用户的系统。 |
| 计费方式 | 包年包月 | 成本可控、性价比高;适用于长期稳定部署的项目,避免因频繁计费波动带来的额外支出;支持提前续费与自动续费,保障服务不中断。 |
| CPU | 4 核 vCPU(标准型 S5) | 能够支持中等并发访问场景,适合运行后端服务、数据库、中型 Web 应用等;支持多线程处理,提升响应效率,是中小型部署的常见选择。 |
| 内存 | 8 GB | 支撑多个服务同时运行(如后端逻辑、数据库、缓存服务等);防止系统内存溢出,提高整体系统的稳定性和服务质量。 |
| 公网带宽 | 12 Mbps(固定带宽) | 比常见的 5~8 Mbps 更高,保障更多并发用户访问时的页面加载和接口响应速度;适合需要演示、多用户在线测试、文件传输等高频交互场景。 |
| 系统盘 | 50 GB SSD(高性能云硬盘) | 存储操作系统和基础环境,读写速度快,提升服务响应;SSD 高 IOPS 能满足频繁 I/O 操作,保障系统稳定运行。 |
| 数据盘 | 130 GB SSD(高性能云硬盘),总计 180 GB | 存储数据库、日志、上传文件等业务数据;大容量磁盘利于后期业务扩展;SSD 提升文件处理性能,数据更安全可靠,系统与业务数据分离便于管理与备份。 |
团队管理
团队沟通,协作
我们团队采用飞书作为主要的沟通和协作平台。具体使用方式如下:
-
即时通讯:使用飞书群组进行日常工作沟通、任务同步、进度跟进。
-
日程管理:通过飞书日历协调组会时间,记录每周工作计划与里程碑。
-
在线文档协作:利用飞书文档进行策划方案、需求分析、技术文档的协同撰写。
-
会议与记录:使用飞书会议功能开展线上组会,便于成员远程参加,同时生成会议纪要。
-
文件共享:在飞书群文件中统一存储项目相关的资料(如原型图、调研文档、用户反馈等)。


代码管理
我们采用 GitHub 作为团队协作与代码管理的主要平台,搭配 Git 工具进行分布式版本控制。具体使用方式如下:
1.GitHub仓库管理
-
创建项目主仓库,设定初始开发分支结构(如
main、dev)。 -
启用Issue管理功能,用于记录任务、Bug 和新功能建议。
-
使用Projects或 看板模块进行任务分配和迭代管理。
-
编写并维护README.md使用文档和贡献规范。
2.团队协作开发流程
我们采用功能模块分支模式进行协作开发,每个功能点独立分支开发。
开发流程说明:
-
每个功能模块由对应成员负责,创建
模块名分支; -
功能开发完成后,提交Pull Request合并至
main; -
合并前需自测并由团队进行Code Review;
-
功能上线后可打tag做版本标记。
3. 版本控制与同步
-
所有成员统一使用Git进行版本控制;
-
通过GitHub Actions(或其他CI服务)实现自动构建、测试或部署;
-
设置
.gitignore文件排除不必要的临时文件、密钥、缓存等。
CI/CD
配置文件
name: CI
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
build-and-test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
run: curl -LsSf https://astral.sh/uv/install.sh | sh
env:
UV_VERSION: 0.2.7
- name: Add uv to PATH
run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Create and activate virtualenv
run: |
uv venv .venv
source .venv/bin/activate
uv sync --dev
- name: Run core tests
working-directory: ./packages/ragnarok_core
run: |
source ../../.venv/bin/activate
uv pip install -e .
pytest -v
- name: Run server tests
working-directory: ./packages/ragnarok_server
run: |
source ../../.venv/bin/activate
uv pip install -e .
pytest -v
- name: Run toolkit tests
working-directory: ./packages/ragnarok_toolkit
run: |
source ../../.venv/bin/activate
uv pip install -e .
pytest -v
触发的列表截图


浙公网安备 33010602011771号