所谓服务器结构,也就是如何将服务器各部分合理地安排,以实现最初的功能需求。所以,结构本无所谓正确与错误;当然,优秀的结构更有助于系统的搭建,对系统的可扩展性及可维护性也有更大的帮助。
好的结构不是一蹴而就的,而且每个设计者心中的那把尺都不相同,所以这个优秀结构的定义也就没有定论。在这里,我们不打算对现有游戏结构做评价,而是试着从头开始搭建一个我们需要的MMOG结构。
对于一个最简单的游戏服务器来说,它只需要能够接受来自客户端的连接请求,然后处理客户端在游戏世界中的移动及交互,也即游戏逻辑处理即可。如果我们把这两项功能集成到一个服务进程中,则最终的结构很简单:
client ----- server
嗯,太简单了点,这样也敢叫服务器结构?好吧,现在我们来往里面稍稍加点东西,让它看起来更像是服务器结构一些。
一般来说,我们在接入游戏服务器的时候都会要提供一个帐号和密码,验证通过后才能进入。关于为什么要提供用户名和密码才能进入的问题我们这里不打算做过 多讨论,云风曾对此也提出过类似的疑问,并给出了只用一个标识串就能进入的设想,有兴趣的可以去看看他们的讨论。但不管是采用何种方式进入,照目前看来我 们的服务器起码得提供一个帐号验证的功能。
我们把观察点先集中在一个大区内。在大多数情况下,一个大区内都会有多组游戏服,也就是多个 游戏世界可供选择。简单点来实现,我们完全可以抛弃这个大区的概念,认为一个大区也就是放在同一个机房的多台服务器组,各服务器组间没有什么关系。这样, 我们可为每组服务器单独配备一台登录服。最后的结构图应该像这样:
loginServer gameServer
| /
| /
client
该结构下的玩家 *** 作流程为,先选择大区,再选择大区下的某台服务器,即某个游戏世界,点击进入后开始帐号验证过程,验证成功则进入了该游戏世界。但是,如果玩家想要切换游戏世界,他只能先退出当前游戏世界,然后进入新的游戏世界重新进行帐号验证。在Ubuntu下搭建服务器
是什么中文翻译叫做:虚拟专用网络。功能是,在公用网络上建立专用网络,进行加密通讯。
适用的场合:
1你的公司网络在一个局域网,不能外部访问。有一天你外出度假了,想访问一下公司的内部网络,外网是不能直接访问的。如果公司的网络有一台主机设置了,你就可以通过连上这台主机,来访问公司内部网络啦。
2如果你的主机是在国外,你可以在这台主机上配置,然后你的电脑连上之后就可以啦。
3某台服务器(如游戏服务器)限制了一些IP连接到它上面,这时你配置,连上之后,就可以继续访问那台服务器。
我们以Ubuntu为例,说一下怎样配置服务器。
1、用root账户登陆服务器
2、安装PPTPD
apt-get install pptpd
3、编辑pptpdconf文件
vi /etc/pptpdconf
取消注释下面内容
localip 19216801
remoteip 1921680234-238,1921680245
这几句的意思是:当外部计算机通过pptp联接到后所能拿到的ip地址范围和服务器的ip地址设置。
4、添加用于登陆的账户
vi /etc/ppp/chap-secrets
格式如下:
# client server secret IP addresses
cqc pptpd 123456
从左到右依次是用户名,自己指定。服务器,填写pptpd,密码,自己指定。IP,填即可。中间用空格分别隔开。
5、设置DNS解析,编辑pptpd-options文件
vi /etc/ppp/pptpd-options
找到ms-dns,取消掉注释,并修改DNS地址,这里我推荐大家用
Google DNS 8888 和 8844
更改为如下内容
ms-dns 8888
ms-dns 8844
6、开启转发
vi /etc/sysctlconf
取消注释以下内容
netipv4ip_forward=1
这句话意思是:打开内核IP转发
更新一下配置
sudo sysctl -p
7、安装iptables并设置
apt-get install iptables
sudo iptables -t nat -A POSTROUTING -s 19216800/24 -o eth0 -j MASQUERADE
后面这句话作用是:立刻让LINUX支持NAT(platinum)
8、重新启动服务
/etc/initd/pptpd restart
9、大功告成,服务器就这么配置好啦。
接下来,利用IP地址,刚才设置的账号和密码,就可以连你的啦。
设置步骤如下:
1、 安装FTP服务和WEB服务举例以windows 2008为例 在同一台服务器上
2、 并且把FTP服务器和WEB服务器两者的主目录设置为同一个文件夹
3、 正常设置WEB服务器属性,使其能提供WEB服务
4、 设置FTP服务器上传权限
在客户端远程登录FTP服务器更新WEB服务器主目录下的内容
FTP数据传输时的连接步骤:
FTP服务器自动对默认端口进行监听,当某个客户端向这个端口请求建立连接时,便激活FTP服务器上的控制进程,对连接用户名、密码和连接权限进行身份验证;
2)验证完成后,FTP服务器和客户端之间还会建立一条传输数据的专有连接;
3)FTP服务器在传输数据过程中的控制进程将一直工作,并不断发出指令控制整个FTP传输数据,传输完成后控制进程给客户端发送结束指令。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)