# DTC **Repository Path**: leol3/dtc ## Basic Information - **Project Name**: DTC - **Description**: 分布式表缓存 - **Primary Language**: C++ - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 64 - **Created**: 2021-08-24 - **Last Updated**: 2021-08-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ![DTC](http://storage.360buyimg.com/bq-install/release/dtc_logo.png) # DTC - Distributed Table Cache 分布式表缓存 ## 概述 DTC是一个分布式表级缓存系统。 DTC系统由以下组件组成: * **Agent** - 提供Key路由、命令请求的服务。 * **Dtcd** - 提供热点数据缓存服务。 * **Connector** - 此组件为缓存与持久化存储数据库(例如:MySql)之间提供连接和数据传输功能。 ## 特征 ## 性能 单核CPU,单DTC实例情况下,可支持60,000 QPS的查询; 在真实的分布式场景中,DTC可支持超过3,000,000 QPS的查询服务,且命中率在99.9%以上。 ## 构建 * gcc/g++ 4.8 * cmake >= 3.6.2 * 安装gflags:
gflags是google开源的一套命令行参数解析工具,支持从环境变量和配置文件读取参数
`git clone https://github.com/gflags/gflags.git`
`cd gflags`
`git checkout -b 2.2 v2.2.2`
`cmake3 -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=ON -DGFLAGS_NAMESPACE=google -G "Unix Makefiles" .`
`make && sudo make install`
`sudo ldconfig `
`sudo ln -s /usr/local/lib/libgflags.so.2.2 /lib64`
### CentOS - 执行以下命令安装依赖:
`sudo yum install -y snappy snappy-devel zlib zlib-devel bzip2 bzip2-devel lz4-devel libasan openssl-devel cmake3 mysql-devel mxml-devel`
### Ubuntu - 执行以下命令安装依赖:
`sudo apt-get install snappy libsnappy-dev zlib1g zlib1g-dev bzip2 liblz4-dev libasan0 openssl libmxml-dev`
* src目录下,执行make即可编译。 ## 第三方依赖 * [cJson](https://github.com/DaveGamble/cJSON) * [log4cplus](https://github.com/log4cplus/log4cplus) * [rocksdb](https://github.com/facebook/rocksdb) * [yaml-cpp](https://github.com/jbeder/yaml-cpp) * [zlib](https://zlib.net/) * [gflags](https://github.com/gflags/gflags) * [mxml](https://www.msweet.org/mxml/) * [twemproxy](https://github.com/twitter/twemproxy) ## 许可证 京东集团 版权所有 © Copyright 2021 [JD.com](https://www.jd.com), Inc. 许可证遵循 [Apache 2.0 协议](http://www.apache.org/licenses/LICENSE-2.0). 更多细节请访问 [LICENSE](https://gitee.com/jd-platform-opensource/dtc/blob/master/LICENSE).