TA的每日心情![](source/plugin/dsu_paulsign/img/emot/nu.gif) | 怒 2017-3-4 11:36 |
---|
签到天数: 293 天 [LV.8]以坛为家I
|
服务器发布流程及其规范
1,环境准备
a, mvn命令行:从\\10.21.210.161\share\tools\apache-maven-3.1.1-bin.tar.gz取出安装包,
解压到本地目录A,添加环境变量M2_HOME指向A,并在系统Path环境变量中增加"%M2_HOME%\bin",
使其可以在命令行下使用。
b, 准备cygwin环境。从http://cygwin.com/setup-x86_64.exe 或 \\10.21.210.161\share\tools\setup-x86_64.ext
取得cygwin安装程序,安装cygwin环境,确保subversion, openssh这两个包的安装。
c,(可选选项)由于配置文件中存在大量中文,所以需要有中文环境,有两种可选方式:
(1),添加环境变量JAVA_TOOL_OPTIONS,设置其值为"-Dfile.encoding=UTF8"。这样程序在运行时会自动
添加该参数。
(2),在运行时的各脚本或配置处添加参数"-Dfile.encoding=UTF8"
d, 迁出发布脚本。 svn co svn://10.21.210.164/MorningGlory/tools/
2, 服务器发布流程。
服务器发布分内网和外网两部分,发布的级别不同,操作流程会有所区别。
A, 内网发布流程。
内网发布分服务端和客户端同时发布和服务端单独更新两大类。区别是前者会涉及到数据,协议等
会影响到客户端正常运行的改动,则必须前后端同时协商发布;后者是服务端bug修复等,不影响客
户端的正常运行。
a, 服务端和客户端同时发布类服务端发布流程
1, 和客户端确定版本号。版本号为类似0.0.0.0的四位数,前三个数字应该是一致的,最后一位数
留给服务端自由使用。
2,和客户端确定发布时间,精确到分钟,且为一个小时之后。
3,在预约的一个小时内,立刻和客户端确定配置数据的一致性。
(1), 确定更新哪些配置文件,确定更新文件列表。
(2), 对所有数据进行合法性校验。
4,确定数据后,在本地试运行,排查错误,执行publish上传最新的Code。
5,修改GameVersion.java文件,设置当前的服务器版本号以及对应的gameserver的svn版本号
6,提前半个小时到十五分钟通知玩家,告知更新时间,版本,更新内容。
7,发布时间到,去GM后台(http://10.21.210.163:7080/morningGlory_Web)进行关服操作。
8, 更新GM后台。与GM后台协商同步GM后台的数据。
9,关服成功后,在cygwin终端内进入tools目录,运行setup.sh脚本:bash setup.sh 版本号
10,打开相应客户端,登陆游戏,确认服务器的正确发布。
11,正确发布后,提交ChangeLog到svn://10.21.210.161/MorningGlory/publish/server/ChangeLog.txt
12,告知玩家已经成功发布。
b, 服务端独立发布流程
Aa类发布步骤4~10。
B,外网发布流程。
1,先按A类发布到内网,经过足够测试才能发布至外网。
3, 内网更新日志模板。
[服务器名称]服务器将于[更新时间]更新至[服务器版本],更新预计持续[时间]。主要的更新内容有:
BugFix:
更新内容:
4,需要紧急更新到外网封测服的内网对应服(当前成为“11区 0.4”的服务器)更新日志模板。
[服务器名称“11区 0.4”]服务器将于[更新时间]更新至[服务器版本],更新预计持续[时间]。主要的更新内容有:
BugFix:
更新内容:
预计更新外网封测服的时间:(这个时间需要和测试约定的测试完成测试的时间,并预留出一定时间处理可能
出现的问题。这个时间是最终发布外网封测服的时间。这个时间至少晚于当前时间一个小时。)
|
|