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:
more:
- if you want use java21/spring-boot3 to run these servers,see: camellia-jdk21-bootstraps
- these servers support use prometheus/grafana to monitor, see: prometheus/grafana
camellia also provide enhanced sdk (based on other open source sdk):
high performance redis-proxy:
- base on netty4, 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: 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:
- snowflake, support setting region tag
- strict-increment id-gen
- db-segment id-gen, support setting region tag
QUICK START
delay queue base on redis:
- 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:
- 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.2.27, have deploy to maven central repository on 2024/03/13 CHANGE_LOG
latest version is 1.2.28-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: zj_caojiajun@163.com