Không có mô tả

Yang Shuang b888408dbb fix bugs. (#195) 1 năm trước cách đây
.gitee eb4f0a02de Initial commit 2 năm trước cách đây
.github 0883d1406c Update release.yml 1 năm trước cách đây
conf 9be5a8896c 184 async conn using shardingsphere instead of async conn (#186) 1 năm trước cách đây
dockerfiles fb66e85e3d Hiding custom fields data of layer3. (#191) 1 năm trước cách đây
docs 7fc26e168d async-conn: rename from async-connector. (#122) 1 năm trước cách đây
script ea427816e8 fix binlog insert/update/delete sql with dbname couldn't sync to L3 (#192) 1 năm trước cách đây
src b888408dbb fix bugs. (#195) 1 năm trước cách đây
tests 3d5050a0bc 176 dtc supporting automate convert number type (#185) 1 năm trước cách đây
.clang-format 8bec0f37c1 update markdown. (#12) 2 năm trước cách đây
.gitignore 81b21677a6 V0.2.0 mysql protocol compatible (#29) 2 năm trước cách đây
.travis.yml f46d41664f dockerfile: fix bug. (#115) 1 năm trước cách đây
CMakeLists.txt f55a6ad480 fix bigs (#18) 2 năm trước cách đây
LICENSE 222612cab3 license change. 2 năm trước cách đây
README.md f878825695 Update README.md 1 năm trước cách đây
README.zh.md 645754e729 README: update CN readme file for github actions. (#59) 1 năm trước cách đây

README.md

DTC

DTC - Distributed Table Cache

Overview

DTC is a high performance Distributed Table Cache system designed by JD.com that offering hotspot data cache for databases in order to reduce pressure of database and improve QPS.

The DTC system consists of the following components:

  • Agent - Provides key consistent hash routing in order to reduce connections and improve performance.
  • Dtcd - Provides hot data caching service.
  • Connector - Provides connection and communication between cache and persistent storage database such as MYSQL.

Feature

  • Database Protection
    • protection for null node, prevent cache breakdown.
    • provide long-term data caching, and prevent cache penetration.
    • data source thread available, protect the database with a limited number of connections.
    • Estimated timeout policy to reduce invalid database requests.
  • Data consistency
    • write-through policy, ensure cache and database data consistent.
    • barrier policy to prevent update requests lost while concurrcy.
  • Performance
    • integrated memroy allocation policy to avoid frequent system calls.
    • I/O multiplexing to handle concurrcy requests.
    • multiple data structure models to improve memory performance.
  • Scalability

    • cache node expands horizontally to enhance cache capacity.
    • cache node expands vertically, supports slave reading, and solve the bottleneck of hot keys.
    • provide sharding, supports for persistent storage scalable.

      Performance

  • DTC can process 90,000 QPS of query requests at single-core cpu & single dtc instance.

  • DTC can provide above 3,000,000 QPS query capability with above 99.9% hit rate and less than 200 μs response time in actual distributed scenarios.

    How to Build

    DTC provides docker images for quick start:

  • Start server docker:

    docker pull dtc8/server:latest
    docker run -i -t --name dtc-server -p 127.0.0.1:20015:20015 dtc8/server:latest
    

    Depending on 3rd-party sql parsing engine hsql . For more compile information, click Building.
    Trying a demo, visit QuickStart.

License

JD.com © Copyright 2022 JD.com, Inc.
Apache 2.0. Visit LICENSE for more details.