camellia framework(中文版)
Camellia is originally develop as basic architecture for netease-yunxin's servers,all the modules is running in netease-yunxin's online-env.
Camellia provide easy-to-use server toolkits:
camellia also provide enhanced sdk (based on other open source sdk):
high performance redis-proxy:
- base on netty4 and java21, support redis-standalone/redis-sentinel/redis-cluster
- support twemproxy 、codis as the upstream(such as migration scenarios)
- support kvrocks 、 pika 、 tendis as the upstream
- support GET/SET/EVAL, support MGET/MSET, support blocking BLPOP, support PUBSUB/TRANSACTION, support STREAMS/JSON/SEARCH/BloomFilter/CuckooFilter, support TAIR_HASH/TAIR_ZSET/TAIR_STRING
- all supported commands: supported_commands
- support sharding/read-write-separate/double-write on proxy
- support multi-route-conf
- support ssl/tls, both client to proxy and proxy to upstream redis
- support unix-domain-socket, both client to proxy and proxy to upstream redis
- support use http to access proxy, like webdis , see: redis_over_http
- support tps/rt/big-key/hot-key/slow-command monitor
- support disguise as redis-cluster/redis-sentinel for high availability
- support custom command plugin, support hot-key-cache(GET command),support value converter and so on
QUICK START
provide some id gen algorithm:
- server require java21, sdk require java8
- snowflake, support setting region tag
- strict-increment id-gen
- db-segment id-gen, support setting region tag
QUICK START
delay queue base on redis:
- server require java21, sdk require java8
- independent deployment of delay-queue-server, scale out, support multi-topic, support http-api
- provide java-sdk, support spring-boot-starter
- provide monitor data
QUICK START
hot key detect and cache:
- server require java21, sdk require java8
- support hot key detect, hot key cache, hot key topN stats
- support custom hot-key-config、hot-key-callback、hot-key-topN-callback、hot-key-cache-stats-callback
- support custom registry, such as eureka、zk and so on
- provide monitor data
QUICK START
latest version is 1.3.2, have deploy to maven central repository on 2025/01/15
CHANGE_LOG
latest version is 1.4.0-SNAPSHOT
<repositories>
<repository>
<id>sonatype-snapshots</id>
<name>Sonatype Snapshot Repository</name>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
If you are using Camellia and feel it helps or you'd like to do some contributions, please add your company to user list and let us know your needs
wechat-id: hdnxttl
email: [email protected]