皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

mongols-1.2.0 发布,为 NOSQL 添加 lua 支持指令

c++ 网络库mongols-1.2.0已经发布。

主要更新:

  • 为nosql服务器medis_server添加lua脚本支持指令
  • 优化线程池
  • 优化tcp_threading_server
  • 优化信号处理

例子

可以用redis-cli与medis_server进行交互,如下:

LUACONTENT "local JSON = require('JSON') local t =JSON:encode({a=medis.ARGS[4],b=2,{c=4}}) medis.CMD('SET',medis.ARGS[3],t)" lua 100
LUASCRIPT 'html/lua/medis.lua' lua Tom
local echo=require('echo')
medis.CMD('SET',medis.ARGS[3],echo.concat('hello,',medis.ARGS[4]))
medis.RESULT={a='hello',b='world',1,3.5,'test'}

简介

mongols是C++ 服务器基础设施库, 它的主要特性如下:

  • tcp 服务器
  • http 服务器
  • websocket 服务器
  • web 服务器
  • leveldb 服务器
  • lua 服务器
  • sqlite 服务器
  • medis 服务器

以上所有服务器均通过epoll机制实现,并且支持多线程化。

mongols不依赖于任何事件库,其并发性能却强于著名的libevent、libev和libuv。

下图为普通的helloworld测试:

mongols-1.2.0 发布,为 NOSQL 添加 lua 支持指令

下图为nginx欢迎页测试(比较于nginx):

mongols-1.2.0 发布,为 NOSQL 添加 lua 支持指令

而且,它提供非常友好的开发接口,使得任何试图基于tcp、resp或http协议开发高性能网络服务器的开发者都能够轻易地完成工作。

仓库:https://github.com/webcpp/mongols

文档:https://mongols.hi-nginx.com

转自 https://www.oschina.net/news/100500/mongols-1-2-0-released