Go to file
YangShuang 7ebc91f4b8
Refine Docker and Test Sample. (#9)
* fix: docker path bug.

* renew: update comment.

* fix: update travis

* fix: test/get.cc bug.

Co-authored-by: wuxinzhen1 <wuxinzhen1@jd.com>
Co-authored-by: wuxz <1067764612@qq.com>
Co-authored-by: caopei11 <caopei11@jd.com>
2021-09-01 19:07:54 +08:00
.gitee Initial commit 2021-08-20 07:17:13 +00:00
.github/workflows github action CI (#4) 2021-08-29 18:20:01 +08:00
conf docker update (#3) 2021-08-28 11:05:57 +08:00
dockerfiles Refine Docker and Test Sample. (#9) 2021-09-01 19:07:54 +08:00
docs github action CI (#4) 2021-08-29 18:20:01 +08:00
script CMake refactor & docker (#2) 2021-08-27 18:57:09 +08:00
src delete makefile, update Cmake (#8) 2021-08-31 11:32:48 +08:00
test Refine Docker and Test Sample. (#9) 2021-09-01 19:07:54 +08:00
.gitignore Yangshuang (#1) 2021-08-23 12:11:39 +08:00
.travis.yml Refine Docker and Test Sample. (#9) 2021-09-01 19:07:54 +08:00
CMakeLists.txt Refine Docker and Test Sample. (#9) 2021-09-01 19:07:54 +08:00
LICENSE license change. 2021-08-20 17:28:13 +08:00
README.md Refine Docker and Test Sample. (#9) 2021-09-01 19:07:54 +08:00

README.md

DTC

DTC - Distributed Table Cache 分布式表缓存

Build Status

概述

DTC是一个分布式表级缓存系统可为数据库提供热点数据缓存支持减少数据库的访问压力。 DTC architecture DTC系统由以下组件组成:

  • Agent - 提供Key一致性Hash路由、命令请求的服务能够减少Cache的连接数提升性能。
  • Dtcd - 提供热点数据缓存、DB代理的服务。
  • Connector - 此组件为缓存与持久化存储数据库例如MySql之间提供连接和数据传输功能。

特征

  • 为数据库提供保护机制:
    • 保护空节点,防止缓存穿透。
    • 提供永不过期的缓存数据,防止缓存击穿。
    • 数据源线程柔性可用,保护数据库有限的连接数。
    • 预估超时机制,减少无效数据库请求。
  • 保障缓存和数据库的数据一致性:
    • write-through机制保证缓存和数据库数据一致。
    • 栅栏机制,防止高并发情景下更新请求丢失。
  • 缓存高性能:
    • 集成内存分配机制,避免频繁系统调用。
    • I/O多路复用机制承接大并发请求量。
    • 多种数据结构模型,提高内存
  • 扩展性:
    • 缓存节点横向扩容,增强缓存容量。
    • 缓存节点纵向扩容支持备读解决热key问题。
    • 支持分库分表,支持持久化存储的拓展。

性能

单核CPU单DTC实例情况下可支持90,000 QPS的查询
在真实的分布式场景中DTC可支持超过3,000,000 QPS的查询服务且命中率在99.9%以上。

构建

项目提供docker镜像可快速启动服务

  • 启动server镜像
    docker pull dtc8/server:latest
    docker run -i -t -p 127.0.0.1:20015:20015 dtc8/server:latest

更多编译详情,请移步buiding.

第三方依赖

项目成员

特别感谢

感谢京东副总裁王建宇博士给予项目的大力支持,多次参与指导提供建议和方向!

许可证

京东集团 版权所有 © Copyright 2021 JD.com, Inc.

许可证遵循 Apache 2.0 协议. 更多细节请访问 LICENSE.