目录
版本发布流程 ................................................................................................................................... 1
版本发布前的准备 ................................................................................................................... 2
一) 确认数据库结构是否需要改动 ....................................................................... 2
二) 确认数据库内容是否需要转换 ....................................................................... 2
三) 确认配置文件是否存在改动 ........................................................................... 2
四) 预估本次发布所消耗的时间 ........................................................................... 2
版本发布操作流程 ................................................................................................................... 2
一) 修改服务器列表状态 ....................................................................................... 2
二) 停止进程 ........................................................................................................... 2
三) 备份待发布的服务进程及所有配置文件目录 ............................................... 2
四) 备份待发布的数据库 ....................................................................................... 2
五) 执行数据发布操作 ........................................................................................... 3
六) 执行配置文件发布 ........................................................................................... 3
七) 执行应用程序发布 ........................................................................................... 3
八) 确认应用程序系统配置文件 ........................................................................... 3
九) 核验和校对 ....................................................................................................... 3
十) 开启白名单模式 ............................................................................................... 3
十一) 启动进程 ........................................................................................................... 3
十二) 通知QA进入白名单测试模式 ........................................................................ 3
十三) 修改登录服务器列表状态 ............................................................................... 4
十四) 确认发布成功 ................................................................................................... 4
版本发布流程
《帝国塔防III》版本发布流程规范说明,为了尽量避免发布出现错误,避免经济损失,整理如下发布规范,发布人员的所有操作务必按照发布流程操作,发布时需要二次确认,操作人员执行发布过程,核验人员执行校对。
版本发布前的准备
一)确认数据库结构是否需要改动
若数据库结构存在改动,对比旧库和新版本库的差异,编写数据结构改动脚本,在QA服务器上执行脚本,模拟发布过程,确认脚本正确有效,以便后面正式发布时使用。评估操作需要的时间。
二)确认数据库内容是否需要转换
当更新大版本时,数据内容可能存在需要新旧转换的过程,编写转换数据的临时程序/脚本,在QA服务器上执行该程序/脚本,确认转换程序有效,QA人员核验通过,评估数据转换时间所耗费的时间。
三)确认配置文件是否存在改动
确认本次发布的配置文件列表,原则上不允许直接将QA服务器上的配置文件整体覆盖至正式服的配置文件,只能发布改变过的配置,所以要求发布QA的人员将所有发布的配置文件做好记录,标记那些配置文件有改动。评估操作需要的时间。
四)预估本次发布所消耗的时间
通过上面的步骤,评估本次发布总体需要的时间(别忘记评估发布操作时的数据备份等需要额外耗费的时间,详细见《版本发布操作流程》),通知运营和客服,方能发布停机维护公告。
版本发布操作流程
一)修改服务器列表状态
将服务器列表状态改为停机维护中。由QA人员确认状态修改成功。
二)停止进程
执行停止进程命令,确认终止进程的顺序,1)逻辑,2)登录,3)缓存,所有进程终止5秒后,执行确认。
三)备份待发布的服务进程及所有配置文件目录
创建发布前备份目录 /data/bak/20150728将当前服务器待发布的程序文件和配置文件备份到该目录,(建议写成脚本执行,否则就只有手工操作),备份完毕后执行确认。
四)备份待发布的数据库
在上面的目录中新建 /data/bak/20150728/mysql目录,将当前数据库备份至该目录。(建议写成脚本自动执行,否则只有手工操作),备份完毕后执行确认。
五)执行数据发布操作
1)执行更新数据库结构的脚本(如果修改了表结构),如果没有脚本,则手工添加或删除字段,
2)执行数据修正程序(如果需要将现有数据进行转换,比如需要将缓存数据文件整体回写入数据库,或将数据库中某些字段经过转换后写入另外的表等诸如此类,需要事先编写转换程序或脚本,在准备阶段就应该完成此项并已在QA服务器上模拟发布通过),这里只是执行运行。
3)确认数据修正成功;
4)备份缓存文件;
5)清除缓存文件;(除非缓存结构发生了变化才需要执行,否则不能每次发布都清除和加载);
6)执行缓存加载命令(除非缓存结构发生了变化才需要执行,否则不能每次发布都清除和加载);
六)执行配置文件发布
1)将事先准备好的且在QA服务器上测试验证通过的待发布的游戏配置文件上传至对应目录,注:不能从本地直接上传,只能从QA服务器验证通过的地方,不能整体目录覆盖,哪些变化覆盖哪些内容。
2)数据库配置文件需要对访问的数据库赋权。
七)执行应用程序发布
1)将待发布的应用程序上传至对应目录,通过md5sum –b 命令确认跟QA服务器对应程序的校验码一致。
八)确认应用程序系统配置文件
1)核验系统配置文件,确认各个服务的端口号是否对应,如果时首次发布,需要核定服务器之间的数据同步是否正确。
九)核验和校对
1)核验人员确认本次发布过程,数据库,配置文件和应用程序发布无误。
十)开启白名单模式
开启内部验证白名单模式
十一) 启动进程
启动顺序,1)缓存,2)登录,3)逻辑,可以通过脚本自动运行,但脚本中需要添加sleep ,每个命令间隔至少2秒;
十二) 通知QA进入白名单测试模式
验证本次发布是否成功。
十三) 修改登录服务器列表状态
确认发布成功 开启正式发布, 十四)
QA再次验证发布
十五)
注:整个发布过程中,数据库发布不允许手工直接使用delete,drop,等删除数据库操作的命令,目录和应用程序发布不允许手工直接使用rm–fr等删除文件和目录的命令。
发布过程不能开启多个终端窗口,操作哪个服,则打开哪个服,操作前确认本次操作的服务器对象即为目标对象。
目录
版本发布流程 ................................................................................................................................... 1
版本发布前的准备 ................................................................................................................... 2
一) 确认数据库结构是否需要改动 ....................................................................... 2
二) 确认数据库内容是否需要转换 ....................................................................... 2
三) 确认配置文件是否存在改动 ........................................................................... 2
四) 预估本次发布所消耗的时间 ........................................................................... 2
版本发布操作流程 ................................................................................................................... 2
一) 修改服务器列表状态 ....................................................................................... 2
二) 停止进程 ........................................................................................................... 2
三) 备份待发布的服务进程及所有配置文件目录 ............................................... 2
四) 备份待发布的数据库 ....................................................................................... 2
五) 执行数据发布操作 ........................................................................................... 3
六) 执行配置文件发布 ........................................................................................... 3
七) 执行应用程序发布 ........................................................................................... 3
八) 确认应用程序系统配置文件 ........................................................................... 3
九) 核验和校对 ....................................................................................................... 3
十) 开启白名单模式 ............................................................................................... 3
十一) 启动进程 ........................................................................................................... 3
十二) 通知QA进入白名单测试模式 ........................................................................ 3
十三) 修改登录服务器列表状态 ............................................................................... 4
十四) 确认发布成功 ................................................................................................... 4
版本发布流程
《帝国塔防III》版本发布流程规范说明,为了尽量避免发布出现错误,避免经济损失,整理如下发布规范,发布人员的所有操作务必按照发布流程操作,发布时需要二次确认,操作人员执行发布过程,核验人员执行校对。
版本发布前的准备
一)确认数据库结构是否需要改动
若数据库结构存在改动,对比旧库和新版本库的差异,编写数据结构改动脚本,在QA服务器上执行脚本,模拟发布过程,确认脚本正确有效,以便后面正式发布时使用。评估操作需要的时间。
二)确认数据库内容是否需要转换
当更新大版本时,数据内容可能存在需要新旧转换的过程,编写转换数据的临时程序/脚本,在QA服务器上执行该程序/脚本,确认转换程序有效,QA人员核验通过,评估数据转换时间所耗费的时间。
三)确认配置文件是否存在改动
确认本次发布的配置文件列表,原则上不允许直接将QA服务器上的配置文件整体覆盖至正式服的配置文件,只能发布改变过的配置,所以要求发布QA的人员将所有发布的配置文件做好记录,标记那些配置文件有改动。评估操作需要的时间。
四)预估本次发布所消耗的时间
通过上面的步骤,评估本次发布总体需要的时间(别忘记评估发布操作时的数据备份等需要额外耗费的时间,详细见《版本发布操作流程》),通知运营和客服,方能发布停机维护公告。
版本发布操作流程
一)修改服务器列表状态
将服务器列表状态改为停机维护中。由QA人员确认状态修改成功。
二)停止进程
执行停止进程命令,确认终止进程的顺序,1)逻辑,2)登录,3)缓存,所有进程终止5秒后,执行确认。
三)备份待发布的服务进程及所有配置文件目录
创建发布前备份目录 /data/bak/20150728将当前服务器待发布的程序文件和配置文件备份到该目录,(建议写成脚本执行,否则就只有手工操作),备份完毕后执行确认。
四)备份待发布的数据库
在上面的目录中新建 /data/bak/20150728/mysql目录,将当前数据库备份至该目录。(建议写成脚本自动执行,否则只有手工操作),备份完毕后执行确认。
五)执行数据发布操作
1)执行更新数据库结构的脚本(如果修改了表结构),如果没有脚本,则手工添加或删除字段,
2)执行数据修正程序(如果需要将现有数据进行转换,比如需要将缓存数据文件整体回写入数据库,或将数据库中某些字段经过转换后写入另外的表等诸如此类,需要事先编写转换程序或脚本,在准备阶段就应该完成此项并已在QA服务器上模拟发布通过),这里只是执行运行。
3)确认数据修正成功;
4)备份缓存文件;
5)清除缓存文件;(除非缓存结构发生了变化才需要执行,否则不能每次发布都清除和加载);
6)执行缓存加载命令(除非缓存结构发生了变化才需要执行,否则不能每次发布都清除和加载);
六)执行配置文件发布
1)将事先准备好的且在QA服务器上测试验证通过的待发布的游戏配置文件上传至对应目录,注:不能从本地直接上传,只能从QA服务器验证通过的地方,不能整体目录覆盖,哪些变化覆盖哪些内容。
2)数据库配置文件需要对访问的数据库赋权。
七)执行应用程序发布
1)将待发布的应用程序上传至对应目录,通过md5sum –b 命令确认跟QA服务器对应程序的校验码一致。
八)确认应用程序系统配置文件
1)核验系统配置文件,确认各个服务的端口号是否对应,如果时首次发布,需要核定服务器之间的数据同步是否正确。
九)核验和校对
1)核验人员确认本次发布过程,数据库,配置文件和应用程序发布无误。
十)开启白名单模式
开启内部验证白名单模式
十一) 启动进程
启动顺序,1)缓存,2)登录,3)逻辑,可以通过脚本自动运行,但脚本中需要添加sleep ,每个命令间隔至少2秒;
十二) 通知QA进入白名单测试模式
验证本次发布是否成功。
十三) 修改登录服务器列表状态
确认发布成功 开启正式发布, 十四)
QA再次验证发布
十五)
注:整个发布过程中,数据库发布不允许手工直接使用delete,drop,等删除数据库操作的命令,目录和应用程序发布不允许手工直接使用rm–fr等删除文件和目录的命令。
发布过程不能开启多个终端窗口,操作哪个服,则打开哪个服,操作前确认本次操作的服务器对象即为目标对象。