xhttpcache

xhttpcache 是一个C/C++开发的HTTP静态缓存服务,也可以做为K-V存储的NOSQL数据库,支持redis协议接口,支持HTTP协议的REST接口; xhttpcache 开源社区群 195957781 xhttpcache 开源社区群

xhttpcache是什么?

xhttpcache被设计为HTTP数据缓存加速服务器,由于实现上使用了NOSQL数据库的访问接口,使之也可以当做简单的KV数据使用;

通过REDIS接口建立的数据,可以直接通过HTTP接口在浏览器里访问查看.

功能与特性

  • 0. 提供HTTP静态缓存服务,支持存储二进制数据;
  • 1. 完整的K-V存储实现, 数据持久化存储(ROCKSDB);
  • 2. 支持数据超时机制,提供毫秒级精度。
  • 3. 现实REDIS协议接口,支持redis的SET/GET/DEL/EXIRE/TTL命令;
  • 4. 实现HTTP协议接口,支持https,支持通过REST命令访问;
  • 5. 自带WEB后台编辑器,可以在线直接添加/修改/删除数据;

xhttpcache 的架构


使用方法:


通过HTTP接口访问:

xhttpcache 有两个HTTP服务端口,可以配置文件里配置;
httpd_frontend_port 为开放访问端口,只支持读请求;
httpd_backend_port 为后端数据操作端口,支持全部REST读写请求(get/post/put/delete);
xhttpcache后端WEB访问地址:http://127.0.0.1:9090/admin.htm
后端数据接口访问可以设置登陆账号密码;

curl -d "testdata" http://test:www@127.0.0.1:9090/testkey
通过POST请求向 xhttpcache 提交建立一条kv格式的数据:testkey -- testdata

curl http://127.0.0.1:8080/testkey
通过get请求访问testkey的数据
通过前端端口访问,不需要密码验证,当然也可以通过后端接口带上密码访问:

curl http://test:www@127.0.0.1:9090/testkey
这两种方式通过GET请求访问的数据是完全一样的。

curl -I -X DELETE http://test:www@127.0.0.1:9090/testkey
通过http协议的delete请求删除testkey

通过redis命令使用示例:



[xsky@localhost xhttpcache]$ redis-cli -p 6579

127.0.0.1:6579> set test wwwwwwwwwwwwwwww
OK
127.0.0.1:6579> get test
"wwwwwwwwwwwwwwww"
127.0.0.1:6579> set test wwwwwwwwwwwwwwww ex 1000
OK
127.0.0.1:6579> get test
"wwwwwwwwwwwwwwww"
127.0.0.1:6579> ttl test
(integer) 988
127.0.0.1:6579> EXPIRE test 2000
(integer) 1
127.0.0.1:6579> ttl test
(integer) 1998
127.0.0.1:6579> get test
"wwwwwwwwwwwwwwww"
.0.0.1:6579>

xhttpcache下载:

下载地址:xhttpcache_20160704.tar.gz

联系作者:


作者: xSky
博客: xSky's Blog
EMAIL:guozhw@gmail.com
github: https://github.com/0xsky