一、服务器端配置
1、设置服务器以守护线程的方式运行
daemonize yes|no
2、绑定主机地址
bind 127.0.0.1
3、设置服务器端口号
port 6379
4、设置数据库数量
database 16
5、设置服务器以指定日志记录级别
loglevel debug|verbose|notice|warning
注意:日志级别开发期设置为verbose即可,生产环境中配置为notice,简化日志输出量,降低写日志IO的频度
6、日志记录文件名
logfile 端口号.log
7、设置同一时间最大客户端连接数,默认无限制。当客户端连接到达上限,Redis会关闭新的连接
maxclients 0
8、客户端闲置等待最大时长,达到最大值后关闭连接。如需关闭该功能,设置为0
timeout 300(秒)
9、导入并加载指定配置文件,用于快捷创建redis公共配置较多的redis实例配置文件,便于维护
include /path/server-端口号.conf
二、高级数据类型
1、Bitmaps(应用于状态的统计)
1.1设置指定key对应偏移量上的bit值,value只能是1或0(不设置默认为0)
setbit key offset value
1.2获取指定key对应偏移量上的bit值
getbit key offset
1.3对指定key按位进行交、并、非、异或操作,并将结果保存到destKey中
bitop op destkey key1 key2 ...
op:
and //交
or //并
not //非
xor //异或
1.4统计指定key中1的数量
bitcount key start end
2、HyperLogLog(数据基数统计)
1.1添加数据
pfadd key element element ...
1.2统计数据
pfcount key ...
1.3合并数据
pfmerge destkey sourcekey ...
注意:
用于进行基数统计,不是集合,不保存数据,只记录数量而不是具体数据
核心是基数估算算法,最终数值存在一定误差
误差范围:基数估计的结果是一个带有0.81%标准错误的近似值
耗空间极小,每个hyperloglog key占用了12K的内存用于标记基数
pfadd命令不是一次性分配12K内存使用,会随着基数的增加内存逐渐增大
Pfmerge命令合并后占用的存储空间为12K,无论合并之前数据量多少
3、GEO(计算距离位置)
1.1添加坐标点
geoadd key longitude latitude member [longitude latitude member ...]
1.2获取坐标点
geopos key member ...
1.3计算坐标点距离
geodist key member1 member2
1.4根据坐标求范围内的数据
georadius key longitude latitude radius(距离) m|km|ft|mi(单位)
1.5根据点求范围内的数据
georadiusbymember key member radius(距离) m|km|ft|mi(单位
1.6获取指定点对应坐标的hash值
geohash key member ...