BILLING数据库里有SERVER开头的几个表,记录几个程序间通讯和端口占用情况。
SERVER-INFO,里面记录着各个程序的IP和用的标识
SERVER-CONX,这个是定义程序间通讯用的PORT情况的
SERVER-ACCEPTX,这个跟上面的差不多~只不过上面是相当于定义程序用哪个PORT去联络另外一个程序,这个是定义程序允许程序通过哪个口联络自己~可能我没表达清楚~就看你理解力了~:)
先做个定义:A=2001 B=3001 C=3003
韩服其实开了两个服务器来负担~两个其实看上去都是一个~你是感觉不出来的~:)
你登陆的时候,通过A连接进去~并看到很多服务器~在数据库里,用CHANNEL来描述和定义这些房间这里面名字就不用说了~其中有一个字段全是3001 3003这些~就靠他们来定义进哪个服务器,补上一句:前面我们定义了A,B,C,其中A,负责登陆~B、C就是两台服务器程序。通过定义使那些房间分布在这两台上~
内容来自dedecms 只认3001 3003这些~这些怎么定义的?就在SERVER-INFO里面
另外两个是定义PORT的
这几个程序工作方式是这样的,启动的时候读取SERVER开头那几个表的内容
从SERVER-INFO里找到自己所对应的标识,就是2001.3001.3003这些~然后再从另外两个表读取PORT信息来BIND PORT。
其实我们测试只需要用到A、B,C用不到~所以你就可以修改数据库里,把所有关于3003的行删除。
现在明白了为什么工作不正常了?呵呵~其实关键就在于SERVER-INFO~也就是说程序是靠IP来判断自己的UID~这就是说LOGIN SERVER和GAME SERVER需要在两个IP下运行,并且需要在SERVER-INFO里面设置对……这样是的话就可以了~连接默认的端口是3153
这个你应该能从数据库里分析出来~数据库里用1000代表客户端
最后就是CHANNEL里面对应的把所有的server-num改成3001,因为你只有3001
好了现在可以去了
附:由于研究完了MYADDRESS没有去测试能否进就睡了~所以没发现这个问题~
copyright dedecms
我现在由于找不到合适的BATTLES数据库来测试所以一直没进~
但我这里选择的会GAME SERVER会出提示~错误~应该是缺表~
真的不想研究了~以上是我理论结合实际得出的,希望对大家有用~
记住,FOOLTOM出品,必属精品:)