选择golang做游戏服务器开发
经过大半年的手机游戏运营、维护、后续开发,对下一个网络游戏的服务器端开发技术选型的需求如下:1. 体系成熟,有大型成功案例2. 开发效率高3. 性能高,最好是支持并行技术充分利用多cpu资源4. 代码加密发布5. 开发逻辑简单,如多线程同步、加锁、多进程同步就比较复杂6. 易学易用,如果是新技术
可选技术对比
我对可以选择的技术平台经过自己的一些分析总结如下(一己之言):
项目 |
nodejs |
python |
c++/ruby |
erlang |
golang |
体系成熟 |
4 |
3 |
5 |
4 |
3 |
开发效率 |
5 |
5 |
3 |
3 |
5 |
性能 |
3 |
3 |
5 |
5 |
4 |
加密发布 |
3 |
0 |
4 |
3 |
5 |
逻辑简单 |
5 |
5 |
3 |
4 |
5 |
易学易用 |
5 |
5 |
2 |
1 |
4 |
跨平台 |
5 |
5 |
5 |
5 |
5 |
@H_502_125@
其实聪明的读者,看以上表,你就已经知道我是最中意golang的,是的!其实以上表只是个幌子,其实选哪种都可以达到目的,同时我看好erlang和golang的并行开发模式来进行游戏开发,我2011年就开始学习erlang和golang,一度沉迷,结合自身的条件和团队情况,我最终选择了golang。
我超喜欢python的代码风格和开发效率,也用它做了近两年的开发,但是它的性能比较低。我无奈放弃了。
我看好golang的出生(三个伟大的发明者)、简洁(关键字最少的语言了吧)、开创性(struct、interface、channel、goroutine),我关注golang快两年,直到去年它发布1.0,且越来越多的项目案例和开发者,我认为现在可以用在生产项目上了。
给golanger的话
我很荣幸我成为了你们中的一员,希望我们可以多交流。我以后的golang代码不涉及到商业秘密的部分我都会放在github.com上与你们共享并接受你们的帮助。我主要用golang开发tcp服务器类的应用,如游戏服务器。
(转自:http://blog.5d13.cn/work/golang/2013/06/16/whyiusegolangtowritegameserver.html)
相关文章
程序目录结构 简单实现,用户登录后返回一个jwt的token,下次请求带上token请求用户信息接口并返回信息...
本篇博客的主要内容是用go写一个简单的Proof-of-Work共识机制,不涉及到网络通信环节,只是一个本地的简...
简介 默克尔树(MerkleTree)是一种典型的二叉树结构,其主要特点为: 最下面的叶节点包含存储数据或其...
接下来学习并发编程, 并发编程是go语言最有特色的地方, go对并发编程是原生支持. goroutine是go中最近本...
先普及一下, 什么是广度优先搜索 广度优先搜索类似于树的层次遍历。从图中的某一顶点出发,遍历每一个顶...
第一天: 接口的定义和实现 第二天: 一. go语言是面向接口编程. 在学习继承的时候说过, go语言只有封装,...