DCache
A distributed in-memory NOSQL system based on TARS framework, support LRU algorithm and data persists on back-end database. Users can easily deploy, publish, and scale services on the web interface.
Install / Use
/learn @Tencent/DCacheREADME
背景
DCache是一个基于TARS框架开发的分布式NoSQL存储系统,数据采用内存存储,支持连接后端DB实现数据持久化。DCache采用集群模式,具有高扩展、高可用的特点。
DCache在腾讯内部有大量业务使用,日访问总量超万亿次。
DCache具有以下特点
- 高性能存储引擎,支持key-value,k-k-row,list,set,zset多种数据结构,支持数据持久化落地后端DB。
- 集群模式,高扩展,高可用,支持异地镜像,就近接入。
- 通过名字访问,支持同步、异步、单向RPC调用。
- 高效运维平台,在线完成服务部署、扩缩容、迁移,以及服务配置,服务调用质量监控。
- 业务无须和直接和mysql交互, DCache会自动缓写DB
支持平台
- Linux
开发语言
- C++
快速上手
DCache的安装建议通过TarsWeb的服务市场安装.
文档
DCache接口使用方法请参考文档Proxy接口指南,更多文档请查看docs目录
目录说明
src:存储相关的后台服务代码。
目录 |功能 ------------------|---------------- src/Comm |各服务共用的通用代码 src/ConfigServer |DCache配置服务 src/DbAccess |数据持久化DB的代理服务 src/KVCacheServer |key-value存储服务 src/MKVCacheServer |k-k-row、list、set、zset存储服务 src/OptServer |服务部署、运维管理,供web管理平台调用 src/PropertyServer |监控信息上报服务 src/Proxy |DCache代理服务 src/Router |DCache路由管理服务 src/TarsComm |Tars数据结构定义
docs:文档。
数据库说明
DCache框架依赖mysql数据库, 当DCache安装以后, 它自动会创建以下数据库
- db_cache_web: DCache的web依赖
- db_dcache_relation: DCacheOptServer/ConfigServer/PropertyServer/DCacheWebServer依赖, 注意DCacheWebServer只是会创建它, 并不是直接使用它
- db_dcache_property: DCache统计数据库, PropertyServer依赖
需要在安装过程中正确设置配置文件中的数据库的地址.
实际每套创建的每套Cache, 如果设置了数据落地, 那么也依赖mysql, 这个在DCache管理平台上可以设置, 安装时正确配置即可.
参与贡献
如果你有任何想法,别犹豫,立即提 Issues 或 Pull Requests,欢迎所有人参与到DCache的开源建设中。<br>详见:CONTRIBUTING.md
