IceFireDB-Proxy
IceFireDB-Proxy is a high-performance, high-availability, and user-friendly Resp protocol cluster proxy solution. It is supporting P2P networking and is a network component in the IceFireDB ecosystem.
- Complete data source mode support: stand-alone, cluster mode
- Rich command support
- Excellent cluster state management and failover
- Supports P2P automatic networking
- New framework for faster network, will be upgraded soon. redhub
Architecture
Protocol
Table of Contents
Install
This project uses Go. Go check them out if you don’t have them locally installed.
1. Install Go
2. git clone https://github.com/IceFireDB/IceFireDB-Proxy.git $GOPATH/src/github.com/IceFireDB/IceFireDB-Proxy
3. cd $GOPATH/src/github.com/IceFireDB/IceFireDB-Proxy
4. make
Usage
Run a binary file directly, if you need to run in the background can be added to the systemd system management
./bin/IceFireDB-Proxy -c ./config/config.yaml
Command support
String
- APPEND
- BITCOUNT
- BITPOS
- DECR
- DECRBY
- DEL
- EXISTS
- GET
- GETBIT
- SETBIT
- GETRANGE
- GETSET
- INCR
- INCRBY
- MGET
- MSET
- SET
- SETEX
- SETEXAT
- SETRANGE
- EXPIRE
- EXPIREAT
- TTL
Set
- SADD
- SCARD
- SETBIT
- SISMEMBER
- SMEMBERS
- SPOP
- SRANDMEMBER
- SREM
- SSCAN
List
- LINDEX
- LINSERT
- LLEN
- LPOP
- LPUSH
- LPUSHX
- LRANGE
- LREM
- LSET
- LTRIM
- RPOP
- RPUSH
- RPUSHX
Hash
- HDEL
- HEXISTS
- HGET
- HGETALL
- HINCRBY
- HINCRBYFLOAT
- HKEYS
- HLEN
- HMGET
- HMSET
- HSCAN
- HSET
- HSETNX
- HSTRLEN
- HVALS
Sorted Sets
- ZADD
- ZCARD
- ZCOUNT
- ZINCRBY
- ZLEXCOUNT
- ZPOPMAX
- ZPOPMIN
- ZLEXCOUNT
- ZRANGE
- ZRANGEBYLEX
- ZRANGEBYSCORE
- ZRANK
- ZREM
- ZREMRANGEBYLEX
- ZREMRANGEBYRANK
- ZREMRANGEBYSCORE
- ZREVRANGE
- ZREVRANGEBYLEX
- ZREVRANGEBYSCORE
- ZREVRANK
- ZSCAN
- ZSCORE
Stream
- XACK
- XADD
- XCLAIM
- XDEL
- XLEN
- XINFO
- XPENDING
- XRANGE
- XREADGROUP
- XREVRANGE
- XTRIM
- XGROUP
Others
License
IceFireDB-Proxy is under the Apache 2.0 license. See the LICENSE directory for details.
Disclaimers
When you use this software, you have agreed and stated that the author, maintainer and contributor of this software are not responsible for any risks, costs or problems you encounter. If you find a software defect or BUG, please submit a patch to help improve it!