站务联系

手机游戏服务器该如何开发呢?

发布时间:2021-05-19   来源:网络整理    
字号:

春节以来新型肝炎漫延全省,而为了避免病毒的传播,各地封路封城,国民基本都是宅在家上面足不出户,受此影响国外种植、娱乐、零售、旅游、餐饮等诸多行业都遭到至击溃。

不过有一个行业竟在这个周末迎来了爆发。

什么行业呢?既然没法在家,那么精神方面的娱乐就便不能少。于是在国外许多行业受灾情影响处于疲软之时,游戏行业竟逆市实现了下降。毕竟无趣的时侯,打游戏是不错的选择。

手机游戏服务器该如何开发呢?

手游上线,手游服务器也要与时俱进,及时做好数据备份工作。那么,手机游戏服务器该怎么开发呢?

下面天下数据小编就随意谈谈相机相机游戏服务器开发还要的技术。

一.聊聊手游服务器开发有什么东西要考虑。

1.开发语言的选择:

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

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

手机游戏服务器该如何开发呢?

1.Gate:首先要有一个Gate(网关)服务器,负责客户端连结及消息转发至Game(游戏服),保持客户端至服务端的连结

没有任何逻辑,只做消息加密跟揭秘,以及客户端跟服务器消息的转发(相当于二者之间的桥梁).

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

3.DBManager:实现数据库的读写,方便Game服务器异步读写数据库的数据(有些把数据库读写置于游戏服,没有单独的服务器,那也许游戏服单进程就不够用了)。

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

4.协议

客户端与服务器之间合同通讯,可以用tcp或则http。主要看游戏模型,如果是这种弱联网单机打法,用http足够了,像天天炫斗之类,只在须要的时侯处理一条http请求响应。

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

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

手机游戏服务器该如何开发呢?

天下数据游戏服务器解决方案图

二.开发一个相机游戏服务器还要把握的开源技术

1.libevent,boost.asio等网路库,网上有很多开源网路库,与其自己造轮子,不如就用开源网路库作为自己服务器的通信库。最出名的就属libevent跟boost.asio了。

手机游戏服务器该如何开发呢?

用protobuf rpc进行数据传输很方便,所以是一个不错的选择。google protobuf只负责消息的打包跟加壳,并不包含RPC的实现,所以须要自己实现。

3.zeromq:消息队列,一个稳健,简洁的多进程通信方案的基础。ZeroMQ 并不是一个对socket的封装,不能用它去实现已有的网路合同。它有自己的方式,不同于更底层的点对点通信机制。它有比 tcp 协议更高一级的合同。(当然 ZeroMQ 不一定基于 TCP 协议,它也可以适于进程间跟进程内通信。)它改变了通信都基于一对一的连结这个假定。

在这里它更适于服务器与服务器之间的通讯,比如逻辑服跟战斗服之间进行通讯。

4.memcached:一个高性能的分布式显存对象缓存系统,用于动态Web应用以减少数据库负载。它通过在显存中缓存数据跟对象来提高加载数据库的次数,从而增加动态、数据库驱动网站的速率。

可以拿来做缓存,比如客户端原先每天操作都还要操作数据库,会严重影响效率,这时在后边加一层缓存系统,就提高了功耗。基于http合同的通信用memcached是一个不错的选择,如果是tcp长链接,直接维护一个在线的显存对象就可以了。

类似的技术也有redis等。

5.glog/zlog:你肯定还要记录日志,看爱好喽。

6.tcmalloc:内存功耗剖析

7.distcc:分布式编译工具,之前每天更改代码都要make半个小时,用distcc进行多台笔记本同时帮你编译,快好多。

天下数据拥有超15年游戏营运经验,全球50+ CN2顶尖网路,1300+个CDN节点资源游戏服务器,包括并除了限于美国台湾,美国,日本,韩国,新加坡,马来西亚等10多个国家直接CN2高速专线接入。无条件免备案,提供智能化DDOS防护升级,负载均衡优化,数据库集群服务及建议,高防CDN节点布局优化等一系列高品质服务,打造适宜企业稳抓顾客布局全球的全能型游戏解决方案。 。

热搜词

图说天下

×
二维码生成