当前位置: 首页 > news >正文

游戏开发服务器选型的横向对比

来源一个某乎的作者,貌似来自台湾

上篇介绍了go版本的游戏服务器,这篇介绍下其它语言版本:

SkynetkbengineNoahGameFramePomeloPinusET
使用的语言C/LuaC++C++NodejsTypeScriptC#
概述云风前辈开源的框架mmo框架server一个快速的、可扩展的、分布式的C++游戏服务器引擎/框架网易开源的游戏框架 但不再维护Pomelo的TS版本基于事件机制的框架 模块可在客户端和服务器双端使用
是否跨平台否(Linux不需要跨平台)否(Linux都不能用?)
文档情况较多(云风会写文档?较多(民间几乎没有(国内)较少较少(官方少,民间多)较少较少
是否支持热更是(框架这么臃肿,能热更表示怀疑)

skynet框架

skynet网上介绍文章比较多,最大特色是使用lua来完成逻辑开发,代码级别的可热更。

kbengine and NoahGameFrame

Pomelo,Pinus,ET

总结:

1、从开发效率和速度来说,skynet和pomelo,pinus是最快的

2、从开发成本来说,ET可以双端执行,对独立开发者来说是很友好的

3、大型点的项目还是推荐skynet和kbengine,文档和issue都还在持续更新

(个人不是很认同,台湾同胞估计对国内形势不是很了解,对自身的境遇的估计不足)

个人锐评论一下

总结补充

  • 其实还有被遗忘的Erlang,Erlang最大的好处就是不依赖系统,本身就是为了专用机器E瑷玛斯开发的,所以在windows单机版本也跑的很好,无需迁就Linux(我能说是做私服很好么,但其实就是没有很多人用,这行业我其实也不懂)
  • skynet和pomelo的开发效率最快,那还用说的么,lua或者js,本身就不是编译语言(却是非常现代的现代语言,也是学校不会教的语言)
  • ET框架其实比较搞笑,我就不展开说的,个人不是不建议用,是不建议你碰,见到就绕路走就好了,虽然我还是个c#博主
  • 大型项目kbengine 还不错是因为作为c++的例子很多,比较适合愿意从头学习c++,闭关学习2~3年。总体来说也是很搞笑的,游戏战场现在都一片红海,快打到外太空了,它还在更新Issue是不是搞笑?
  • Pomelo 网上内容多,适合学;Pinus 几乎没有内容,只有一个非常简陋的文档;
  • 服务器硬件,搭建还是需要很多基础知识的
  • 易学难精,先甜后苦,知易行难,从来都是如此
  • Pomelo是网易2012年开源的服务器架构,如果懂得云风,丁丁和网易得恩怨刚好就是从那时候开始得,网易是不可能主推skynet框架的,如果云风使用js 的服务器框架也不可能存活到现在,毕竟竞争激烈,Pomelo也不容易
  • 说了这么多skynet和Pemolo,大概你懂我意思?就是他两个是独一档的,比较底层,比较通用,和其他所谓的服务器”引擎“不是一回事,
  • 说了这么多,真没说具体服务器如何开发;外行真的很难懂这些,但行内随便一个小公司就都用的还是这些,就是实在不行,进个厂吧,比自己摸索靠谱

最后分享一个Pomelo入门-详细

pomelo使用笔记_pomelo request_IT 哈的博客-CSDN博客

http://www.lryc.cn/news/143875.html

相关文章:

  • 【android12-linux-5.1】【ST芯片】HAL移植后配置文件生成报错
  • 基于深度神经网络的分类--实现与方法说明
  • Java“牵手”天猫商品快递费用API接口数据,天猫API接口申请指南
  • 哲讯科技携手无锡华启动SCM定制化项目,共谋数字化转型之路
  • ModaHub魔搭社区:将图像数据添加至Milvus Cloud向量数据库中
  • svn下载
  • 为什么说es是近实时搜索
  • 程序自动分析——并查集+离散化
  • Qt 获取文件图标、类型 QFileIconProvider
  • TopicExchange主题交换机
  • A Survey on Large Language Models for Recommendation
  • Springboot 入门指南:控制反转和依赖注入的含义和实现方式
  • 使用Tampermonkey(篡改猴)向页面注入js脚本
  • 软考高级系统架构设计师系列之:论文典型试题写作要点和写作素材总结系列文章二
  • 【Linux】如何在linux系统重启或启动时执行命令或脚本(也支持docker容器内部)
  • 医疗中心管理环境温湿度,这样操作就对了!
  • 嵌入式系统存储体系
  • 【Java架构-版本控制】-Gitlab安装
  • 关于disriminative 和 generative这两种模型
  • 关于Java中@Transient主键的作用的一些介绍
  • 死信队列理解与使用
  • tomcat 启动 java war 包
  • leetcode分类刷题:滑动窗口(三、两个序列+窗口定长类型)
  • 一个简单的web应用程序的创建
  • 分类行为的排斥作用
  • 表现层消息一致性处理
  • 【C语言进阶(8)】自定义数据类型1:结构体
  • 【Spring Boot】以博客管理系统举例,完整表述SpringBoot从对接Vue到数据库的流程与结构。
  • TabView 初始化与自定义 TabBar 属性相关
  • 线程池等待对象回调函数执行(CreateThreadpoolWait)