开源的游戏服务器框架一般都是用什么语言? |
开源的游戏服务器框架一般都是用什么语言? 有哪些开源游戏服务器框架,值得学习呢。基于node.js 、java、C#、golang 、c++、python 等技术栈有各种各样的游戏框架。 本文收集一些比较常用的 github上star和fork有一定数量的较为完整的框架。 skynet 云风大神的框架这个基本上使用很多的, c+lua的框架。skynet只能算是网络层的轮子但是因为其众多的用户还是很不错的,主要的思想是基于Actor模型,Actor之间通信的唯一机制就是消息传递。使用此引擎开发的游戏众多,很多棋牌小企业在用,简悦的陌陌争霸、食物战争等等很多产品。 pomelo 网易开源的框架,支持分布式, 周边完善 多进程单线程的应用架构。node.js天生采用单线程, 使它在处理复杂逻辑的时候无需考虑线程同步、锁、死锁等一系列问题, 减少了很多逻辑错误。由多进程node.js组成的服务器群是最理想的应用架构。不得不说nodejs很强大。 NoahGameFrame 支持lua,是一个轻量级,快速,可扩展的分布式插件框架,基于蜗牛引擎flexi的思想,可用作MMO RPG / MOBA游戏旖旎情 代表做全民无双,作者是前蜗牛员工,现居海外 ,蜗牛员工开起来会似曾相识。 kbengine c++和python实现的MMOG游戏服务器框架,这个已经被电魂千万收购 ,已经改名为comblockengine,成为商业引擎,底层C++,脚本层python,限制开发的问题是调试,python脚本写起来很方便,但是kbe调试是很大的问题,不知道商业化之后有没有解决这个问题。 ET Unity3d 客户端c#服务器框架,支持分布式客户端服务器共享代码 ,对客户端是unity的同学有天然的亲近感。这个框架没怎么看过。 经过产品验证并且教程比较完善 GoWorld – 用Golang写一个分布式可扩展、可热更的游戏服务器。 使用Golang开发游戏服务器有如下的优点: 运行效率远高于各种脚本语言,大幅度提升服务器承载能力 内存安全,不会像C++服务器那样出现内存错误导致服务器down机 Goroutine能够很好地利用多核计算能力,提升承载能力 GoWorld和bigWorld思想一致 。和KBE有几分相似,我不怎么适应go的语法。可能写的少,不做评价。 虽然上面有很多开源的服务器框架,但是每个人的开发习惯不同,不得不说 适合自己的才是最好的!你还知道哪些开源的游戏框架欢迎留言。 好用的香港云主机、香港云空间、香港服务器的相关问题,可以咨询挖主机网络wa57.com,安全稳定、速度快、易操作,专业技术7×24小时服务。 部分内容、图片来源于互联网,如有侵权请联系我们挖主机wa57.com删除! |