DBPack is a database proxy pack aims to provide a distributed transaction solution of high performance and has no invasion into business logic. It can be deployed as a sidecar in a pod, which can shield complex basic logic, so that business development does not need to rely on a specific SDK, simplifying the development process and improving development efficiency. It supports any programming language and is easy to use.
- support MYSQL protocol.
- event driven distributed transaction solution inspired by kubernetes.
- support read write splitting and custom SQL routing via Hint.
- support audit log and SQL tracing.
- sharding: support query on sharded table, support
order by
andlimit
. - sharding: support
insert
,delete
,update
on sharded tables. - can be deployed as a sidecar,support any programming language.
- more features on the road.
using prometheus metrics, default metric server runs at :18888
- Go >= 1.17
- MYSQL >= 5.7+
- Listener: responsible for parsing the SQL protocol.
- Executor: responsible for forwarding SQL requests to the backend physical DB.
- Filter: responsible for metrics statistics, SQL interception, encryption and decryption of sensitive information, etc.
- ConnectionFilter: process the intercepted SQL on the connection.
To enter the WeChat discussion group, please scan the QR code below and reply with the code "join the group".
DBPack is licensed under the Apache License, Version 2.0.