关于手游的开发

  

前端用的统一,使用xlua做热更,基本百分之九十的功能都是使用xlua来编写的,只有网络,协议,核心通用工具是用c#来做的;

  

后端使用java,网络使用网状的框架,数据库用mysql;

  

前后端通讯协议使用谷歌的protobuf,需要到git上找protobuf的xlua支持,官方已经支持了java;

  

×××中都会有定时器的处理,比如×××中的发牌,抢庄,翻牌等,如果放在客户端来控制,个人感觉是比较难的,并且在房间的同步上也会存在问题,所以都是放在服务端来做,这个时候就要考虑该用什么样的方案来处理大量的定时器呢?我用的是网状的实现的时间轮定时器,在<强> HashedWheelTimer 中实现的,具体的用法可以自行去学习。

  

<>强关于时间轮定时器
关于手游的开发“> <br/>定义一个时钟周期和步长,当指针每走一步时就获取当前时钟刻度上挂载的任务并执行。</p>
  <p> <>强关于protobuf </强> <br/>前端用的是lua-protobuf,在git上可以找到,用起来比较方便。还有一个protoc-gen-lua,也可以在git上找的到,这个需要自己下载整个项目后编译,有些麻烦。</p>
  <p>后端直接下载官方的java支持就可以使用。</p>
  <p> .proto文件一定要按包划分,不然生成协议文件会过大,影响编码(打开慢)和性能。<br/> <img src=关于手游的开发