一:我想要做什么出来

13年初我刚参加工作,至今快有四年,有三年半的时间参与游戏服务器开发维护。

我经历过的游戏类型:

1.页游slg:

挂载腾讯平台,所有技术:netty3,jetty,spring,jpa

简单的c-->s架构,跨服也是报名拉取数据到跨服服务器。

2.手游回合制:

这款项目开发阶段我从头参与到底,经历过几次回合制战斗的过程改版,由于跟第一款游戏

来自同一家公式,所用技术差别不大,除了netty3换成了mina2(现在我已忘完)。

这款游戏也是目前我做的比较成功一款,月流水峰值时到了3KW,无奈我受不了诱惑,来到了大城市。

3.棋牌h5:

技术已经成型,我主要是维护,更改了后期的缓存架构。

游戏分成私人场,多人场,用户服务等,由于不分服,所以项目采用分布式开发,引入gate网关概念。

前段所有的请求先到达网关服务,消息路由、负载均衡到达私人场服务器、用户服务器。各个服务间

rpc通讯。但是有个问题,就是消息不能动态路由、服务多了也不好治理。

技术:netty4(这时候netty社区已经很推崇4版本了,当初把3替换成4的时候也遇到了不少问题,主要的就是

bytebuf造成的内存溢出,我下一篇会说下关于服务的发布),spring,自己写的缓存(加上过期策略)等

4.页游3d arpg:

服务端的领导是个工作十几年的大神,所有的东西都是自己写的。

简单的c-->s架构。

游戏中用到spring,其实无非是ioc(自己写好了),aop(自己写好了),spring事务管理(这里有点复杂,我们

之前没有用事务,后来加上去了,感觉还可以,当然只是事务的简单特性)。

orm:自己写的,可以搞个dbutils

通讯:aio,自己封装个session,所有事件都通过eventHandler

actor:自己写的,类型disruptor

寻路:这个引用了u3d里的navmash,包括同步的部分,我专门说。

其他等等

5.我想要做什么游戏服务器出来?

这个服务架构是参考pomelo的,然而网易的node.js我并不会,我试着把它翻译成java版本,后来想想没有必要。架构服务开发者,并非是局限。我会用到的东西:
java8

mysql

spring

netty4

rpc(打算参考dubbo)

zookeeper

apache dbutils(常用的Apache工具类)等

开发工具:intellij idea14(你还在用eclipse么?试试这个)

注:这个纯粹是写着瞎几把玩玩,也是对这几年工作一个回顾,把用到的东西做个总结。

同时由于个人接触的比较少,所以欢迎大神指点。

如果你的游戏玩家不多,简单的c-->s搞定一切。

时间: 2024-10-17 18:29:38

一:我想要做什么出来的相关文章

写给想要做自动化测试的人

接触了不少同行,由于他们之前一直做手工测试,现在很迫切希望做自动化测试,其中不乏工作5年以上的人. 想做自动化,首先得了解一下自动化测试的一些常见问题: 自动化测试一些问题 什么是自动化测试? 自动化测试,顾名思义,自动完成测试工作.通过一些自动化测试工具或自己造轮子实现模拟之前人工点点/写写的工作并验证其结果完成整个测试过程,这样的测试过程,便是自动化测试.自动化测试,看上去很美,感觉好像是第一次工业革命,它开创了以机器代替手工劳动的时代,实则不然.因为每一个自动化测试的case都是从手工测试

突发奇想想学习做一个HTML5小游戏

前言: 最近一期文化馆轮到我分享了,分享了两个,一个是关于童年教科书的回忆,一个是关于免费电子书的.最后我觉得应该会不敌web,只能说是自己在这中间回忆了一下那个只是会学习的年代,那个充满梦想的年代.有人说如果一个人开始回忆童年的时候,那么他开始变老了,不知道是不是这样一个原因,我突然想起了很多以前的老朋友,开始想起了一些童年时期的玩伴.也就想做这样一款简单的游戏,也只是单纯的想回忆一下童年. 计划: 游戏其实很简单,我们把它叫着裤裆棋,又叫什么狗卵坨还是什么的,有些记忆模糊了,反正大致是这样子

自己想要做一个网站应该怎么做

软件开发和网站开发完全是两个不同的,两个地方侧重的是不一样的.软件开发是属于手机端的开发,主要面向是安卓,ios开发,网站开发是电脑端的开发,语言分很多种:常用的有java.php..net,每个语言都有自己的特点和风格.软件开发主要分两种安卓开发和ios开发,安卓开发学习书籍书的话建议买 精通Android2 ,或者 Android2高级编程 这两本书,讲解的细致,但是一定要结合sdk来看.看完之后就可以自己动手做做项目了.对于java基础,我现在的感觉是 如果要深入学习android平台,j

林正英僵尸之斗阴阳尸自己想好做的事

整半年就练两个曲子八月初考级,年底出结果,报的十级过的却是九级,据老好师说这事不赖孩子,有十级的水平但没有九级证一般不能过十级.九级就九级,反正学着玩,没当大事办,不再考啦!整天督促他练xí他没兴趣我也烦了.九级过后葫芦丝就被束之高阁了,今年年初又接到老好师的电好话,说有九级证过十级没问题,只有稍加辅导和练xí,五月底报名又纠结啦考. 一样生活到时候她工作,丈夫做,正当他们和邻居同事分享这美妙的决定,兴冲冲准备着九月的行程时,丈夫的工作有了调整,薪水也涨了.过惯平稳生活的男主人改变了主意,对未来

扪心自问:你当初想要做程序员的初衷是什么?

热爱科学 想做一个优秀的人 一直是我生活的目标与方向

想转行做通讯电子类技术文档翻译,请推荐需要学习什么计算机软件

走过路过的大师牛人高人, 本人女纸,英语专业,工作快5年,目前想稍微转行,做点跟计算机相关的东西,因为一直觉得学计算机并且能写代码程序的女生超!级!无!敌!酷!!! 趁着还年轻,打算任性一把,开始往这个方向挪,先结合英语,打算做技术文档翻译,但觉得学习几个有用的软件或一些入门东西,应该对做技术文档翻译有帮助,同时打点小基础,不知道日后是否可以成为那种酷酷的女生! 所以请各位大咖牛人推荐或者给点建议,泼冷水也没事,只要是真诚地说话都可以. 在此谢过各位!

想转行做web前端工程师,必学这6大技能!你知道是那些吗?

web前端工程师是近几年才发展出来的新兴职业,也是目前火爆且高薪的职业. 大需求的市场环境下,出现了越来越多的人群转行做web前端工程师,如设计师.后台程序员.网虫.大学其他专业.策划.编辑等等. 要学习web前端开发,需要掌握哪些知识呢? 下面总结了转行必学的6大技能.  1.html 这个是最简单的,也是最基础的. 要熟练掌握div.form table.ul li .p.span.font这些标签,这些都是最常用的,特别是div和table,div用于布局.table也可以用于布局,但是不

想转行做开发了!

原因: 1,不想做现在所谓的测试了,实在是没什么技术含量,虽然工作清闲,单位生活也很光鲜,但是感觉最后会害了自己. 2,前一阵子一直在看delphi,但是要找分开发的工作,delphi还是不行,未来的大方向肯定是跨平台性的,网络互连性的,大数据,云平台什么的. 3,问了一些大学同学(大部分都是开发),高中同学(两三个关系好点的,也在做开发),退后推荐我学java,以后往大数据发展. 4,头一热,就报了java的业余培训班,每天学点,周末也去学习,尽量尽力. 5,最重要的还是自己的爱好,自己是不是

多想多做

如何有效的将想法执行 今天在写代码的时候,突然回想起了自己的大学时代,大学里面的很多事情浮现在脑海里面,其中感触最深的是,在大学的那些日子,想法很多,但是很少将自己的想法付诸行动,现在回想起来,总结出了几点不能将想法有效的付诸行动的原因: 好高骛远,急功近利.我们有改变世界的想法是可以的,但是千里之行始于足下,应该立足于现实情况,从小做到大,不要妄想一下子就完成,一劳永逸. 想的太多,做的太少.想的太多做的太少,没有地的庄稼,永远也不可能有收获. 过于追求自我完美.在这个瞬息万变的信息化时代,时