lua 实现动态server集群(一)
博客专区 > tonnis 的博客 > 博客详情
lua 实现动态server集群(一)
tonnis 发表于4年前
lua 实现动态server集群(一)
  • 发表于 4年前
  • 阅读 65
  • 收藏 0
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   

摘要: lua 配合 C/C++实现动态服务器

声明:可以随意转载,但是要注明转载来源啊,哈哈

最近由于频繁修改服务端代码,经常是因为增加一点点的功能或者信令增加一个标记位,而不停的升级、编译、提交版本、提交测试、升级支持,弄的心情超级烦躁。从而触发了一个使用脚本动态语言来编写服务想法,想法虽有,但是被采纳的可能不大,试试吧,先分享出来大家看看,Let's go

分析现状:

1、现状当前服务端数量过多,各式各样的服务,甚至有时候一个小功能就一个服务,定制化十分严重。

2、通讯以udp为主,http url ,tcp也有,每个服务均以:收到消息->处理消息->等待消息模式为主

3、代码分散,每个人负责几个服务端,经常出现信令更新不一致现象引起的测试不通过问题。

4、信令每次修改最少要升级2个服务,也就意味着至少要重启2个服务

改善现状提出对脚本语言的要求:

1、兼容当前服务端部分源码(C/C++、boost库),不能让其他同事反感(因为要推广开来)

2、脚本语言性能不能过低,支持多线程,并且要实现模块化,能与基础语言C/C++融合

3、可以信令实现动态解析,实现信令高低版本兼容,处理函数在脚本中实现

4、脚本可以实现热更新,远程更新脚本,远程管理服务

 

考察过很多语言后,lua成为首选,

1、可以与c/c++通讯互相调用

2、可以动态加载实现热更新

3、luarocks可以找到很多第三方库方便扩展

4、在远程管理上已经选择现有的redis,lua也有redis client

先预想拓扑图

标签: c c++ lua 服务器 redis
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 0
博文 1
码字总数 693
×
tonnis
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: