- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
分布式自动化版本发布系统的简单实现分布式自动化版本发布系统的简单实现
_______________________________
分布式自动化版本发布系统
_______________________________
目 录
第1 章 分布式自动化版本发布系统3
1.1.概述3
1.2.架构说明3
1.3.系统UI4
第2 章 实现原理7
2.1.版本信息获取模块7
2.1.1. SVN 版本库7
2.1.2. Maven 9
2.2.版本信息数据库 12
2.3.版本发布系统及任务分发模块 12
2.4.任务执行模块 14
第1章 分布式自动化版本发布系统
1.1.概述
在页游或手游行业,游戏的版本发布是运维日常工作主要部分,在短暂的停
机维护时间内要将游戏的新版本发布到几十台甚至数百台服务器中。这种工作强
度下,运维必须采用一些自动化运维的手段,在实现自动化运维时,不同的团队
会采用不同的技术,大致如下:
1. 采用puppet、chef、func 、salt 等开源工具
2. 写一些shell 或python 脚本
3. 开发自己的自动化运维系统
笔者采用的是第3 种方式,理由是:
1. 第3 方开源工具的安装、配置、维护比较麻烦,有一定的学习成本,且
功能不太灵活;
2. 第2 种方式需要登陆一台运维服务器,根据需求输入一些命令,对其他
SA、运营、策划的同学有一定的学习成本,且容易发生误操作;
3. 自主开发自动化运维系统,对团队的开发水平有一定的要求,但是灵活
性高,可以根据业务情况开发出非常适合自己公司业务需要的工具,提
供友好的WEB 操作界面的话,可以招一些水平较差的SA 来培养,降
低人力成本。
1.2.架构说明
以下为笔者开发的自动化运维工具的架构图:
版本信息获取模块
版本信息数据库
版本发布系统WEB及
任务分发模块
任务队列及任务执行
结果数据库
任务执行模块 任务执行模块 任务执行模块
架构说明:
1. 版本信息获取模块的功能是从SVN 或maven 中每隔1 分钟获取一次版
本信号,然后将版本信息存入数据库;
2. 版本发布系统提供一个WEB 界面,用户可以进行版本发布、服务器开、
关、重启、项目录入、游戏大区录入等操作,操作指令将作为任务存入
任务队列;
3. 任务队列数据库将保存每个任务信息及执行结果
4. 任务执行模块会实时从任务队列中拉取任务信息并执行,可以部署1 个
或多个,加快任务执行速度。
1.3.系统UI
在使用前需要通过域账户登陆:
登陆后如下所示 (这个是一个游戏后端的项目,代码提交后maven 会自动
构建成zip 文件):
在版本发布前需要录入项目信息及游戏大区信息:
项目和游戏大区录入后就可以使用本系统进行版本发布了,如下图所示:
版本发布时,可以在任务执行服务器中看到详细的发布过程,如下图所示:
版本发布完成后,会自动完成重启,正好在此过程中被监控系统发现,然后
邮件报警了。重启任务发出后跳转到服务管理页面,如下图所示:
第2章 实现原理
2.1. 版本信息获取模块
2.1.1.SVN 版本库
SVN 版本库的检查可以使用pysvn 模块,代码片段如下:
#检查SVN 的更新情况
def project_svn(path, team):
#pathA = /data/release/tech
project = path[name]
ret
您可能关注的文档
最近下载
- DLT-612-2017-电力行业锅炉压力容器安全监督规程.pdf
- 北师大版九年级数学下册教案(完整版)全册教学设计.doc
- 2023-2024学年下学期《形势与政策》学习通超星期末考试答案章节答案2024年.docx
- 2021至2022学年上学期中学化学沪教版期中考题之电解水实验(有答案与解析).pdf
- 龙王池尾矿库回采和利用项目(闪星锑业公司)环境影响报告.pdf
- 山东玻纤:首次公开发行股票招股说明书摘要.docx
- 东风本田-享域(ENVIX)-产品使用说明书-享域(ENVIX)乐享版-DHW7103FSCSF-享域(ENVIX)用户手册(2019款).pdf
- 江苏-南京市 2023-2024学年六年级英语上学期期末真题汇编卷 (含答案解析).docx VIP
- 2024年软件资格考试软件设计师(中级)(基础知识、应用技术)合卷试题及解答参考.docx VIP
- 急性心肌梗死合并心原性休克诊断和治疗专家共识(2021版)解读.pptx
文档评论(0)