【完善世界】 架设教程
AU服务器的安装配置
1.Java环境安装配置
AU的 manager和auth机械需求安装java环境.
将java.tar.gz解压至/usr/目录下,编辑/root/.bash_profile,(拜见bash_profile)加入以下几行:
PATH=$PATH:/usr/java/jdk1.5.0_05/bin
export CLASSPATH=.:/usr/java/jdk1.5.0_05/lib/dt.jar:/usr/java/jdk1.5.0_05/lib/tools.jar
export JAVA_HOME=/usr/java/jdk1.5.0_05
安装au database需求的神器出山:www.shenqi73.com神器出山:www.shenqi73.comJDBC库,并将库文件加入到/root/.bash_profile中的CLASSPATH配置项中.
2.CA认证配置和hostname-ip配置
将ssl.tar.gz 解压至manager:/etc/目录下.
在/etc/hosts文件加入一行:
aumanager_ipaddress aumanager
此中aumanager_ipaddress为aumanager的内部IP地址.
改正manager:/export/auth/etc/hosts,和auth:/etc/hosts,加入一行:
aumanager_ipaddress manager
此中aumanager_ipaddress为aumanager的内部IP地址.
3.帐号数据库的成立
成立帐号数据库,按照mssql_table.sql和mssql_storeprocedure.sql示例文件成立数据库表和存储历程.
4.配置文件改正
改刚好table.xml文件中关于帐号数据库衔接的部份.将改刚好的table.xml复制到manager:/etc/目录,/export/auth/etc/目录和auth:/etc/目录下.
改正gmopgen.xml文件中关于各游戏服务器的属性.将改刚好的gmopgen.xml复制到manager:/etc/目录下. (/etc/gmopgen.xml是服务器列表配置文件,该文件需求按照游戏服务器的增添来增添和改正XML中的zone项,必须切确填写id(服务器ID,唯一标识该服务器,与游戏服务器中gdeliveryd的呼应设置要一样),aid(计费区ID,与游戏服务器中gdeliveryd的呼应设置要一样,普通情形下,免费版全部服务器都操纵同一个计费区ID),name(服务器名称),url(访谒游戏服务器对外接口的webservice url)四个属性.)
将authd.conf文件复制到/export/auth/etc/目录和auth:/etc/目录下.
将GMServer.conf文件改正呼应IP配置信息和密钥配置信息后,复制到manager:/etc/目录下.
5.Authd服务安装启动
解压cauthd.tar.gz至auth:/root/目录,进入cauthd/build目录,确认java环境配置正常,后台运行
#./authd &
假定工作正常,不会有Exception输出到屏幕.常见的错误大约是,找不到JDBC类文件,大约未正常衔接数据库.然后按Ctrl+D退出会话,authd在后台持续运行.
authd是一个脚本,它会启动一个java进程并监督该java进程,假定java进程被杀掉10秒后会自动再起一个.
所以,重起Authd服务只需在auth机械上实施killall -9 java.
假定要无缺关闭Authd服务,则先实施killall -9 authd,再实施killall -9 java.
6.Tomcat安装配置及GMServer安装
将jakarta-tomcat-5.5.9.aumanager.tar.gz解压至/usr/local/目录,
运行/usr/local/jakarta-tomcat-5.5.9/bin/startup.sh启动tomcat.
在aumanager上运行killall -9 java可以关掉tomcat进程.
将/usr/local/jakarta-tomcat-5.5.9/webapps/目录下内容清空,将GMServer.war和monitor.war文件复制到/usr/local/jakarta-tomcat-5.5.9/webapps/目录下,重起tomcat.这时可以访谒https://aumanager-ipaddress/monitor页面.
查看tomcat的输出文件/usr/local/jakarta-tomcat-5.5.9/logs/catalina.out,看可否正常工作.
7.检测Au可否正常工作
在auth机械上启动authd,在manager机械上启动tomcat.然后检测以下项目可否正常工作.
1)在auth机械上实施netstat –antp号令,查看java进程可否在LISTEN 29200端口,该端口会采取来自各游戏服务器delivery的衔接.查看java进程可否有到数据库机械的衔接,示例中关于MSSQL Server的缺省配置,该当有1433端口的衔接.
2)在manager机械上查看/export/logs/world2.syslog该文件为auth机械上的authd的日记输出.正常工作时,假定该文件没有变更,阐明日记没有传输过来,需求查抄cauthd/build/log4j.properties配置文件,auth机械可否解析manager的ip,auth和manager的syslog可否工作正常.
3)查看tomcat的输出文件/usr/local/jakarta-tomcat-5.5.9/logs/catalina.out,看可否正常工作,tomcat中工程重要的日记信息会被同时输出到/export/logs/world2.java文件中.查看该日记文件可否工作正常.
4)访谒https://aumanager-ipaddress/monitor页面,测试各项功效可否正常.
5)配置logrotate.编辑manager:/etc/logrotate.d/syslog文件,可以配置/export/logs/world2.java和/export/logs/world2.syslog文件的转动.倡议world2.syslog每日转动一次,保存1周;world2.java每周转动一次,保存一年.Tomcat的日记文件catalina.out也会变大,倡议每周转动一次.保存3周.
6)按期查抄manager的硬盘空间操纵情形.
二.游戏服务器配置和管理
1.服务构造图
2.游戏配置,公布和管理
1)游戏配置,在/home/super/update/config目录下配置好呼应的xml文件(xml配置文件在c.xml底子上改正便可)后,改正link1机械IP和操纵的xml配置文件对应表/home/super/update/config/ip_xml.conf,在公布时,公布程序package可以按照link1机械IP,自动找到本组服务器对应的xml文件.
2)游戏公布:
#/home/super/update/cpackage/package –-gameinstall
大约指定xml配置文件:
#/home/super/update/cpackage/package ../config/c.xml gameinstall
游戏公布完后,已经启动好.
3)游戏启动(同iweb管理页面中的“修复启动”):
#servicerun –start
过一会后,便可将servicerun进程杀掉,#killall -9 servicerun
4)游戏关闭:
#servicerun –stop
过一会后,便可将servicerun进程杀掉,#killall -9 servicerun
3.检测游戏服务器可否正常工作
1)database机械:ps aux号令查抄gamedbd进程可否存在;netstat –antp号令查抄gamedbd可否在监听29400端口;查抄/dbf/目录下可否有dbhome目录大约dbhomewdb目录.
2)link机械:ps aux号令查抄glinkd进程可否存在;netstat –antp号令查抄glinkd可否在监听29000端口,查抄glinkd与delivery机械和各台game机械可否有衔接.
3)delivery机械:ps aux号令查抄gdeliveryd和gacd进程可否存在;netstat –antp号令查抄与au可否正常衔接(29200)端口,与角色数据库可否正常衔接(29400端口),与唯一名服务器可否正常衔接(29401端口).假定与au和唯一名服务器未衔接(SYN_SENT情况),查抄delivery的防火墙(iptables –L -nv)以及au,唯一名服务器可否正常启动.
4)game机械:ps aux号令查抄gs进程可否存在.
5)backup机械:假定在该服启动了唯一名服务,则ps aux号令查抄uniquenamed进程可否存在,查看/export/目录下可否有uname目录.查抄数据备份可否正常,backup:/export/backup目录和backup:/export/unamebackup目录,正常情形下,每小时一个备份.
6)按期查抄manager,database,backup的硬盘空间操纵情形.
4.数据备份
角色数据库备份在backup:/export/backup目录下,每个备份一个目录,目录名就是备份时间,每小时一个,该备份为全备份,可以按期复制到其他机械做容灾备份.唯一名服务的数据备份在backup:/export/unamebackup/目录下,每个备份一个目录,目录名就是备份时间,每小时一个,也是全备份.
三.管理页面
1.访谒管理页面的人员需求安装个人证书安装,在windows机械上,双击world2_ca.cer安装, 安装时挑选安装到 “受信任的根证书公布机构”里.(这个证书可以不安装,假定不安装,每次访谒页面会弹出信任确认的对话框).
双击world2_iwebmanage.p12 安装密码: wanmeishikong .安装该证书可以访谒
https://gamemanager/iweb/manage 页面和 https://gamemanager/cricket 页面,实施管理和监控.
双击world2_iwebrole.p12 安装密码: wanmeishikong .安装该证书可以访谒
https://gamemanager/iweb/role 页面,可以改正角色信息等.也可以访谒https://aumanager/monitor页面,可以简易成立帐号,充值.
四.编程接口
1.GMServer供应的 webservice接口阐明
接口类UserServiceInterface(url是http://aumanager/GMServer/userservice)和接口类ServiceInterface(url是http://aumanager/GMServer/gmservice),供应的接口具体阐明拜见文件cGMServer/src/common/interface.xml.
(高级功效:假定要增添大约改正接口,可以改正cGMServer/src/common/interface.xml文件,然后运行cGMServer/src/common目录下的gen脚本,生成呼应接口类,并完成在cGMServer/src/service目录下的实现类代码.)
(高级功效:协议描写文件cGMServer/src/config.xml定义了GMServer和Authd之间通信的协议,主要包含踢用户下线,改正密码,划拨金元宝几个接口.接口实现文件在cGMServer/src/protocal目录下.)
数据库描写文件/etc/table.xml定义了数据库表,查询,存储历程,以及数据库服务器衔接配置.
权限和服务器列表/etc/gmopgen.xml配置文件也是GMServer.war来读取的.
GMServer项目文件改正后,需在cGMServer/目录下实施ant号令,编译公布到cGMServer/dist目录下,生成GMServer.war文件.
2.划拨金元宝接口策划一
玩家充值时,直接调用web service接口useCash.注意,每次调用该接口城市直接怎增添玩家的金元宝,不管返回值是多少.假定某笔充值调用后没有返回大约返回-1,-2,需求中止全部充值服务,举行查抄.返回-1和-2是不该该显现的,假定显现,极大约是数据库衔接已断开,充值服务需求中止.
接口以下所示:
/**
* method useCash
* 划拨金元宝,调用该接口即为帐号划拨金元宝,返回0表示已经划拨完毕,返回其他值表示正在划拨行列中,此中返回-1或-2表示大约有错误,需求人工查抄缘由.每笔画拨该接口不管返回何值,都不需求反复调用,不然会反复划拨.
*
* @param username : 用户名
* @param zoneid : 服务器ID
* @param aid : 计费区ID
* @param cash : 划拨的金元宝个数乘以100
* @param loginfo : 调用者信息
*/
public int useCash( String username, Integer zoneid, Integer aid, Integer cash,
LogInfo loginfo);
3.划拨金元宝接口策划二
操纵webservice 接口useCashInform.该策划历程是,充值时,先调用存储历程将每笔金元宝划拨放入行列中,然后调用useCashInform接口将该笔充值快速划拨(假定不调用useCashInform,该笔画拨会在5分钟后自动处理).
步骤一:存储历程调用
// 调用存储历程adduserpoint,成功调用后持续实施,不然,中止,划拨失利.
adduserpoint userid, aid, cash*90
//调用存储历程 usecash,调用被实施后(不管参数中返回的error代码是多少)则金元宝已在划拨行列中.
//该行列每5分钟会被自动处理.
//usecash存储历程被实施后,假定参数中返回的error为0时,则调用web service接口useCashInform,参数必须一致.
usecash userid, zoneid, 0, aid, cash*90, cash, 1
步骤二:useCashInfrom调用
useCashInform接口以下所示:
/**
* method useCashInform
* 划拨金元宝奉告.返回后果含义同useCash.该接口为useCash接口的备选策划.操纵useCashInform会使系统更结实,降低出错概率.调用该接口前,需求调用adduserpoint存储历程和usecash存储历程.调用完adduserpoint和usecash存储历程之后,金元宝划拨已经放入行列,调用useCashInform只是为了更快的将行列中的该笔信息划拨,每笔画拨useCashInform只能调用一次,调用多次会显现错误.
*
* @param userid : 用户ID
* @param zoneid : 服务器ID
* @param aid : 计费区ID
* @param cash : 划拨的金元宝个数乘以100
* @param loginfo : 调用者信息
*/
public int useCashInform( Integer userid, Integer zoneid, Integer aid, Integer cash,
LogInfo loginfo);
4.Iweb webservice接口
iweb webservice接口是游戏服务器对外供应的掌握游戏和设定参数的编程接口,接口在类ciweb/src/com/goldhuman/service/interfaces/GMService.java中定义.供应的接口具体阐明拜见文件ciweb/src/com/goldhuman/service/interfaces/interface.xml.
(高级功效:假定需求增添新接口大约改正现有接口参数和返回值,可以改正接口定义文件ciweb/src/com/goldhuman/service/interfaces/interface.xml,然后运行同一目录下的gen脚本,生成呼应接口类,并完成在ciweb/src/com/goldhuman/service/GMServiceImpl.java文件中的实现类代码.)
Iweb项目文件改正后,需在ciweb/目录下实施ant号令,编译公布到ciweb/dist目录下,生成iweb.war文件
上一个软件:新魔界服务端+架设视频带补丁[模板源码]