您的位置: 首页 > 新闻资讯 > 高质量代理 > 正文

游戏火热,搭建游戏服务器需要什么?

发布时间:2019年03月17日 作者: 来源:互联网

  我们利用服务器可以让信息在网上展示出来,通常搭建网站都是需要服务器的,即使是游戏也一样的,那么搭建游戏服务器需要什么呢?游戏服务器有什么作用?


  官服为了游戏的公平,所有游戏参数都是经过测试后给出的(包括金币的获得,道具的掉落,抽奖的概率等等……),而私服是个人修改的,没有经过大量用户的测试,也没有经过内测,所以相对来说比较夸张。


  另外既然提到了内测,游戏官网在游戏正式发布之前还会搭建一个内测服务器,用于让一部分玩家来内测,内测就是为了找出游戏的BUG用于完善游戏公平和体验。有时候内测服也叫体验服。再有,某些游戏由于开发的公司是国际化的,可能还会分国服和国际服,字面上来说国服就是国内用户可以玩的,国际服就是国际玩家可以一起玩的。


游戏火热,搭建游戏服务器需要什么?


  游戏服务器通俗讲法:你去参加婚宴,以圆桌为例,人围着桌子坐,如果100人都做一个桌子上,那么你想吃一个菜的时候,需要转很久才能吃到这个菜;如果分开10个桌子,一个桌子上10个人,那么你很快就能吃到想吃的那个菜。这里的桌子,就是所谓的服务器,它是承载你“吃的菜”的一个载体;多个服务器的作用就是把这个吃饭的人分开,让他们都能快速的“吃菜”。


  那么游戏服务器是怎么搭建的呢?游戏服务器搭建需要什么?


  1.存盘


  有数据库就肯定有数据库读写操作,最主要的还是存盘(save),周期存盘还是即时存盘。


  即时存盘就是每一次操作数据都进行存到数据库,当然这样会导致对数据库的操作过于频繁,毕竟这是效率的瓶颈之一。


  周期存盘也叫固定存盘,就是每隔固定时间存盘一次,比如10秒或者15秒,这样数据库的压力就会小很多,当然自己就要在内存中做好数据操作,防止数据污染或者存盘不上导致回档。


  2.服务端架构


  Gate:首先要有一个Gate(网关)服务器,负责客户端连接及消息转发到Game(游戏服),保持客户端到服务端的连接,没有任何逻辑,只做消息加密和解密,以及客户端和服务器消息的转发(相当于两者之间的桥梁).


  GameServer:GameServer是游戏进程,提供游戏逻辑功能(采用单进程(或者单线程)模型,游戏服务器的瓶颈从来不在CPU,所以只做逻辑功能的话单线程足够了,在这里没必要用多线程或多进程)。


  DBManager:实现数据库的读写,方便Game服务器异步读写数据库的数据(有些把数据库读写放在游戏服,没有单独的服务器,那恐怕游戏服单进程就不够用了)。


  GameManager:负责管理所有的GameServer,GameServer之间消息转发,提供广播到所有Game的功能。


  3.开发语言的选择


  工欲善其事,必先利其器,选择一门适合的开发语法对后期开发有着事半功倍的作用。


  业界主要的是c/c++ + Python/lua模式做游戏服务器。c/c++做网络通讯数据传输,python/lua做业务逻辑。这样既保持了网络传输的效率(c++),又提升开发效率(Python/lua),同时也支持热更新。


  当然,也有其他服务器开发语言,erlang,c#,Java,node.js,php等。


  4.协议


  客户端与服务器之间协议通信,可以用tcp或者http。主要看游戏模型,如果是那种弱联网单机玩法,用http足够了,像天天酷跑之类,只在需要的时候处理一条http请求响应。


  不过tcp用的比较还是比较多的。现在的网络游戏大多数都是tcp,像MMORPG类游戏。我们现在的游戏就是同时用了http和tcp,客户端和游戏服采用http协议。只有多人战斗转向战斗服才采用tcp长链接。


  udp:其实游戏是有udp的,在一些高效率的场景下比如pvp即时战斗,tcp的拥塞控制和超时重传并不适合,有些就用的udp,然后自己做丢包重发,拿网络公平性换游戏局部的效率。


  现在参与开发的游戏就同时使用了http协议和tcp协议,在游戏服是单机玩法用http协议,战斗服需要长连接保存协议状态,用的tcp。


  5.数据库


  现在比较流行的两种数据库,关系型数据库mysql和非关系型数据库mongodb。关于两者之间的各种比较,网上有很多,当然你也可以用其他数据库,至于sql server,不怕被坑你就用吧(我向来对微软的东西没好感)。


  以上介绍了一些关于游戏服务器的一些基础的知识,若是需要使用服务器,就找万变云,更多的选择,更好的服务。


相关文章内容简介

1 哪些行为会致使服务器中毒?如何维护服务器的安全?

  如今,很多企业都使用服务器,很多资料都连接网络的。如果服务器遭遇病毒,这容易导致企业有所损失,特别是一些高危行业,有利益可图更容易引来黑客。  如果服务器被攻破,那么企业中最重要的数据、资料很有可能在一夜之间荡然无存,或者被有心人窃取带来更大的危害。那么如何维护服务器的安全?  我们有时候会听到用户在使用的服务... [阅读全文]

2 选择安全稳定的vps技巧,非常实用

  随着网站的发展,很多网站或许是需要更换一款服务器,保证网站的正常运转,这对于站长来讲,有一款性价比高,安全稳定的网站空间是保证网站运营的关键因素。  那么我们选择什么服务器好呢?共享主机、VPS、独立服务器是我们存放网站需要的具备环境,一般的站长还是使用的共享主机,随着建站的需求以及搜索引擎对于网站空间的重要性考核,... [阅读全文]

推荐阅读

  1. 29

    2019-06

    租用虚拟主机的实用经验

    租用虚拟主机的实用经验分享!想到虚拟主机,大家首先想到的可能是价格便宜,因此很多人都使用虚拟主机的,那么怎么选个好用的虚拟主机呢?对于“怎样挑选虚拟主机”的话题都是千篇一

  2. 27

    2018-11

    虚拟主机可以应用于哪些场景?虚拟主机的用途介绍

    互联网的今天能够如此的繁荣和迅速发展,虚拟主机起到了不可估量的作用。截至到目前,虚拟主机依然是计算机领域的一款强大产品,那么虚拟主机可以应用于哪些场景?

  3. 05

    2019-09

    云主机的使用安全如何保障?

    虽然云主机的功能非常强大,但是云端服务平台,毕竟还是会有被恶意攻击的可能性。在日常的使用运营中,企业以及站长可能通过什么方式去提高云主机的防御性能,减少被攻击的可能呢?

  4. 09

    2019-05

    租用服务器选择哪种类型好?

    租用服务器选择哪种类型好?服务器租用是指用户无需购买服务器和服务器硬件,由idc服务商提供服务器,任何根据对硬件的需求进行组装后,放置到接入联通电信或者双线路的数据中心机房,

  5. 17

    2019-04

    租用什么样的游戏服务器好?

    租用什么样的游戏服务器好?游戏运营者在刚开始选择游戏服务器租用时,常常会碰到如何选择服务器租用配置(deploy)的问题,其实,网络游戏在选择服务器租用时,最基本的依据是根据预算的

  6. 09

    2019-09

    云主机能不能用于玩游戏?

    我们都知道云主机的功能是十分强大的,作为服务器而言,它有许多超出其他类型服务器的方面。不过有一件令人好奇的事,不知道大家有没有想过,云主机到底能不能拿来玩游戏?