vlambda博客
学习文章列表

开源一个c++ lua服务器框架

一个跨平台的c++<->lua服务器快速解决方案,该框架即可快速响应服务器开发工作,设计思想:“让事情变得更简单”

网络底层采用libuv(node.js底层库),异步io助力使单线程也能释放澎湃动力,跨平台支持epoll、iocp、ipv6。框架支持tcp、udp/kcp、websocket、http,并保证了接口的一致性,使用了sol2将所有接口都导出到lua,可以选择用lua开发逻辑。

使用modern c++开发,尽可能的使用std::move、std::string_view减少内存复制。

该框架使用异步事件,不建议使用多线程,避免多线程带来的上下文切换开销和代码美感的问题,网络部分和逻辑部分使用一个主事件循环驱动。建议的方案是多进程单线程的横向扩展,按照业务控制各个进程的粒度,当然mysql和redis可以加入到线程池中。

创建一个tcp服务器

只需要简单几行代码即可创建一个tcp高性能服务器,并自动处理数据包头和粘包(其中包头包含消息长度和协议号),构建一个完好的NetPacket交给你。

开源一个c++ lua服务器框架


创建一个kcp服务器

c++的kcp服务器示例,快速构建你的帧同步服务器,保证消息的可靠性

开源一个c++ lua服务器框架


创建一个websocket服务器

自动完成解析websocket协议工作


更多详细介绍请前往文章末尾处的传送链接

构建

你需要一个modern c++17编译器

  • vs2017 测试通过

  • gcc version 9.3.0 测试通过

获取开源

1、github中搜索:jwEngine

2、复制网址:
https://github.com/jwcpp/jwEngine





来源:

https://www.toutiao.com/i6832545646449263116/

“IT大咖说”欢迎广大技术人员投稿,投稿邮箱:[email protected]



来都来了,走啥走,留个言呗~




 IT大咖说  |  关于版权 

感谢您对IT大咖说的热心支持!



相关推荐


推荐文章