Skip to content

Latest commit

 

History

History
92 lines (77 loc) · 3.79 KB

README-en.md

File metadata and controls

92 lines (77 loc) · 3.79 KB

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.

GitHub Maven Central

Instruction

camellia-redis-proxy

high performance redis-proxy:

  • base on netty4, support redis-standalone/redis-sentinel/redis-cluster
  • support GET/SET/EVAL, support MGET/MSET, support blocking BLPOP, support PUBSUB/TRANSACTION, support STREAMS/JSON/SEARCH, support TAIR_HASH/TAIR_ZSET/TAIR_STRING
  • support sharding/read-write-separate/double-write on proxy
  • support multi-route-conf
  • support tps/rt/big-key/hot-key/slow-command monitor
  • support custom command interceptor, support hot-key-cache(GET command),support value converter and so on
    QUICK START

camellia-id-gen

provide some id gen algorithm:

  • snowflake, support setting region tag
  • strict-increment id-gen
  • db-segment id-gen, support setting region tag
    QUICK START

camellia-delay-queue

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

camellia-hot-key

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

camellia-redis(enhanced-redis-client)

  • base on camellia-core and jedis(2.9.3),main class is CamelliaRedisTemplate, can invoke redis-standalone/redis-sentinel/redis-cluster in identical way,support pipeline
  • support client sharding/read-write-separate/double-write
  • support read from slave(redis-sentinel)
  • provide CamelliaRedisLock、CamelliaFreq utils
    QUICK START

camellia-hbase(enhanced-hbase-client)

  • base on camellia-core and hbase-client,main class is CamelliaHBaseTemplate
  • support client read-write-separate/double-write
    QUICK START

camellia-feign(enhanced-feign-client)

join camellia-core and open-feign, so your feign-client have this feature:

  • support dynamic route
  • support custom route by request param
  • support custom load balance policy by request param
  • support read-write-separate/double-write
  • support dynamic conf, such like timeout
    QUICK START

camellia-cache(enhanced-spring-cache)

base on spring-cache:

  • support redis, support local-cache(Caffeine)
  • support mget/mevict by annotation
  • support setting different ttl, support setting cache null value
  • support custom serialize/deserialize, default use jackson, support cache value compress
  • support dynamic cache clear by update cache key prefix
    QUICK START

camellia-tools

provide some simple and practical tools, like:

  • compress
  • encrypt
  • thread pool
  • distribution lock
  • circuit breaker
  • ......
    QUICK START

Version

latest version is 1.2.9, have deploy to maven central repository on 2023/06/02
CHANGE_LOG

User List

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

Contact

wechat-id: hdnxttl
email: zj_caojiajun@163.com