20 Star 39 Fork 21

hy0kl / event-json-rpc

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
BSD-3-Clause

event-json-rpc

基于 libevent,以二进制头+json为协议来实现的 rpc 框架.

参考和依赖

libevent
cJSON
zlog
libzdb

以此为基础

https://github.com/jasonish/libevent-examples

json c 解析器

https://github.com/kbranigan/cJSON

c loger

https://github.com/HardySimpson/zlog

数据库连接池

http://re2c.org/ https://github.com/mverbert/libzdb http://www.tildeslash.com/libzdb

命令号和错误码

命令号/错误码

Q&A

为什么不用 protobuf 或 thrift ?

因为我认为现在互联网开发的数据交互, json 已经成为事实标准,所以采用 json,这样在架构上让它直接,简单,有效,还兼具可扩展性,使那些只要支持 socket 编程的语言都可以不借助 protobuf/thrift 的扩展就能轻松实现 RPC.

为什么用 libevent,而不直接用 epoll?

libevent 已经经过无数网络程序验证过了,无需再造轮子,而且我造的轮子大概率没有现成的好.另外,我大部分程序是在 mac 下开发,跨平台的网络库比效率更重要.

TODO

 _____ ___  ____   ___
|_   _/ _ \|  _ \ / _ \
  | || | | | | | | | | |
  | || |_| | |_| | |_| |
  |_| \___/|____/ \___/

TODO

Copyright (c) 2015, Jerry Yang All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of event-json-rpc nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

简介

基于 libevent,以二进制头+json为协议来实现的 rpc 框架. 展开 收起
C
BSD-3-Clause
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C
1
https://gitee.com/hy0kl/event-json-rpc.git
git@gitee.com:hy0kl/event-json-rpc.git
hy0kl
event-json-rpc
event-json-rpc
master

搜索帮助