游戏服务器架构和web服务器架构的区别?

游戏服务器架构和web服务器架构的区别?,第1张

1-技术有什么区别

首先通信上目前的主流是HTTP协议和SOCKET这两种(HTML5提供了一种新的协议,WebScoket,对此了解并不多,因此不做评论,以免误导)。

HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。

(注:在HTTP 1.1中则可以在一次连接中处理多个请求,并且多个请求可以重叠进行,不需要等待一个请求结束后再发送下一个请求。)

Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。

以J2SDK-1.3为例,Socket和ServerSocket类库位于http://java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过SocketImpl类及其子类完成的。(摘自百科)

在WEB服务器中,一般情况是只需要使用HTTP协议的。因为它不太需要去与浏览器进行主动推送,只需要响应浏览器的访问就足够了

而在游戏服务器,这样的连接方式肯定是不够用的。很多时候游戏服务器是需要主动推送消息,如系统广播。

2-思维有什么区别

WEB服务器并不需要高频即时通讯,对响应速度要求不高。而游戏服务器,大多数是需要很及时的响应速度(暂不讨论弱联网游戏)。如DOTA,这种竞技类型的游戏,1秒就能发生很多事。

因此,在思考方向上,WEB服务器应该考虑是的多平台的兼容,大量用户访问的高并发。

而游戏服务器应该考虑的是高频通讯,高并发。

3-架构的侧重点有什么区别

在架构上面,一般访问量不是很大的网站是只有一台服务器的,访问量高的才会进行分布式设计或者集群设计。

而大部分游戏服务器都是需要分布式设计的。

在现有的网络游戏服务器端架构中,多是以功能和场景来划分服务器结构的。具体的划分是根据项目的需求进行的,并没有一个十分通用的架构。

以上是比较常见的结构,客户端登录的时候,连接GateServer,然后由GateServer去连接LoginServer进行登录。登录后通过CenterServer转发到GameServer(GameServer即是服务器大区)。

而其中的DCServer,主要的功能是缓存玩家角色数据,保证角色数据能快速的读取和保存。

LogServer便是保存日志的了。

4-本质有无区别

本质上,两者并无区别,只是需求不同,侧重点不同罢了。

说到服务器系统的选型,Windows Server用户和Linux用户又会开启碾压模式,始终都觉得自己选择的系统优于其它系统。其实站在中立角度来说,存在即有价值,不管是Windows Server还是Linux,都有自身的优劣势,最终选择哪款系统还是要看项目实际情况而定。

1、Windows Server傻瓜式操作,入门门槛低,安全性低

可以说99%的人选择Windows Server作为其服务器操作系统是因为它的入门门监低,因为都是可视化窗口操作,可以这样说,只要会基本的电脑操作的用户花几天时间就能完全掌握Windows Server的管理和维护。

但不可否认的是Windows Server的安全性是比不上Linux类系统的,这里不需要多说什么,大家可以看看所有的杀毒软件都是针对Windows平台的,像Linux和macOS上的杀毒软件基本没有。

2、Linux安全性高,但门槛过高

Linux内核系统以安全据称,搞过软件开发的朋友都知道,在Linux平台上执行某些程序时经常会遇到权限不足的情况,这是因为Linux的权限设计得很严格,所以在操作上就略显繁琐了。

另外,Linux类系统主打的是终端模式,而不是桌面版系统。所以很多用户在面对Liunx黑色的命令行模式时就显得力不从心,望而生畏。

现在的程序开发语言很多,基本上每种都可以去开发服务端程序,所以最终 游戏 服务器系统的选择要看这个服务端程序是用什么语言开发的。

对于Java、C/C++、PHP、Python、Node.js等都是跨平台的,可以在Linux和Windows Server等系统上运行;但对于微软系的开发语言(如:VB、C#、.NETCore)等也就只能在Windows Server上运行了。

那肯定是linux好。linux安全,高效。如果需要,甚至任何一台安卓手机,都可以做个可靠的linux微型服务器。

微软服务器,每个礼拜都要关机维护一次。不然磁盘碎片太多,后面会越来越慢。linux服务器不需要维护这个。因为linux服务器,没有磁盘碎片问题。

微软内核没有公布,里面含着各种秘密后门,比如安全局秘钥特种权限。整个微软服务器非常不安全。最多只能用在不需要保密的 娱乐 服务器上面。

其实,微软内核对美军情报部门是秘密公开的。任何一位美国安全局特工,都可以轻易的利用,微软特殊秘钥。获取,全球任何一台微软服务器的一切资料。

linux内核是公开的,所以服务器,自然没有看不见的后门。因此,无论是金融银行,还是需要保证技术安全的互联网巨头,以及先进技术需要保密的制造巨头企业,最后公文需要保密的公权力党政军机关单位。都会优先使用linux服务器。

做 游戏 ,如果服务器被黑了。最坏的可能,意味着破产,所以呢,还是必须老实的拥抱linux。

这个问题其实可以从两方面来考虑:

一、性能方面在专业人士经常使用来看区别不是很大,也不会说是存在碾压的情况。Linux中的线程切换速度比Win server快,但是安全性方面Win server比Linux要好一点,之所以这样说是Win 的易用性比较高,一般人士都会因为各种情况给Win防护墙开路。但是在小白手里经常出现的情况要是放到Linux上那就比较严重了。

二、其次就是经济上考虑的话Linux 免费 Win server 花钱(比较贵),但是Linux用起来比较复杂一点(要配合工作产出比来衡量)。

所以,选择他们其中一个都是可以的,主要是看你用哪个最方便适合,更专精于哪个。有句老话难者不会,会者不难。根源就在于人,系统都是面向全世界的存在即合理!选择看自己!

理由如下:

希望对你有帮助

游戏 服务器其实真的不复杂,主要是多简单指令,高并发,这恰恰是Linux的长处,然而既然性能要求不高,那么win其实完全也够用了,顺带还可以有更容易上手的交互界面和数据库支持。

所以,没有谁更好的说法,用谁都够用

小白用windows,大神用linux,相对来说linux更安全,同配置性能略优,windows操作方便,使用简单,运维更容易点!

用着好就行,实际上win应该更好些,毕竟有大公司更新维护。乱改的测试平台就是以个人喜好为主。

linux,稳定性好。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/54121.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-26
下一篇2023-02-26

发表评论

登录后才能评论

评论列表(0条)

    保存