游戏服务器架构和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-本质有无区别

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

一、学习HTML5和CSS3基础随着这移动互联网快速发展的时代,尤其是4G时代,HTML5+CSS3已然成为新一代的web前端技术。

随着HTML5的发展和普及,了解HTML5也将成为Web开发人员的必修课。

涉及到网页外观时,就需要学习CSS了,它可以帮你把网页做得更美观。

利用HTML5和CSS3模拟一些你所见过的网站的排版和布局(色彩,图片,文字样式等等)。

二、学习JavaScript,了解DOMJavaScript是一种能让你的网页更加生动活泼的程序语言。

IT培训http://www.kmbdqn.cn/认为学习JavaScript的基本语法,学会用JavaScript操作网页中DOM元素。

在北大青鸟Web前端开发课程第二阶段完全可以实现大家平常喜欢玩的2048游戏。

(是不是感觉挺有意思)接着学习使用一些JavaScript库,比如Jquery是大部分Web开发人员都喜欢用的,通过Jquery可以有效的提高JavaScript的开发效率。

三、学习Web前端核心学习Jquery之后,大家就要学习HTML5高级阶段(HTML5Canvas绘图、HTML5SVG、音频和视频处理、表单处理、表单验证...等)北大青鸟每学习一个阶段,都是让学员真正进行项目实战,在熟悉和消化所学习知识的同时,增加自己的项目经验和团队协作能力。

在学习Jquery和HTML5学习结束后,就可以完成飞机大战、飞扬的小鸟以及复杂订单的实现。

四、学习HTTP协议及Server端技术服务器端脚本编程(后台开发)也是Web开发人员的基本功之一,北大青鸟学员现在学习的是最流行的php。

要构建动态页面通常会使用到数据库,通常PHP使用Oracle、MySQL数据库。

对于Web服务器来说,Apache一个就已经是了。

那么Apache、php、数据库,该怎么理解它们的关系?1、Apache是服务器基础,php和数据库都需要Apache来协调工作2、php是脚本解释,如果不用php,那么Apache出来的东西就只是静态的,而不能在服务器实现功能3、数据库完全可以单独使用,但是和Apache、php一起,则是由php代码调用数据库接口,而apache就负责解释php代码,让他能真正地实现对数据库的调用这个阶段的项目实战是实现京东订单页和个人论坛。

五、学习Web前端高级技术当你掌握了HTML5,CSS3,JavaScript等技术之后,就应该找一个Web框架加快你的Web开发速度,使用框架可以节约你很多时间。

在北大青鸟学习的Bootstrap是目前很受欢迎的前端框架。

Bootstrap是基于HTML、CSS、JAVASCRIPT的,它简洁灵活,使得Web开发更加快捷,是web前端开发者最喜欢,也是现在企业里最常用的前端框架。

AngularJS是一款优秀的前端JS框架,已经被用于Google的多款产品当中。

AngularJS有着诸多特性,最为核心的是:MVC编程、模块化、控制器、路由、事件绑定等等。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存