Memcached和Redis
Memcached 介绍与使用指南
Memcached是一个高性能的分布式内存对象缓存系统,它通过在内存中缓存数据和对象来减少数据库的查询次数,从而提高数据访问速度。它特别适用于读多写少、对数据一致性要求不高的应用场景。Memcached的守护进程是用C写的,客户端可以用任何语言编写,并通过Memcached协议与守护进程通信。
安装与配置:
在Ubuntu系统上,可以使用以下命令安装Memcached:
sudo apt-get update
sudo apt-get install memcached
配置文件通常位于/etc/memcached.conf
,可以修改此文件来设置最大内存使用量、监听端口等。
基本操作:
- 设置键值对:
echo -e "set foo 0 0 3\r\nbar\r\n" | nc localhost 11211
- 获取键值对:
echo -e "get foo\r\n" | nc localhost 11211
- 删除键值对:
echo -e "delete foo\r\n" | nc localhost 11211
Redis 模块系统
Redis Modules是Redis 4.0版本引入的一个功能,它允许通过外部模块对Redis进行功能扩展。模块以动态链接库的形式存在,可以在启动时加载或运行时加载。
模块列表:
- RediSearch:全文搜索引擎模块。
- RedisJSON:JSON数据类型模块。
- RedisGraph:图数据库模块。
- RedisBloom:概率数据结构模块,如Bloom过滤器。
使用Redis Module:
- 下载模块,例如RedisJSON,可以从GitHub上的RedisJSON releases页面获取。
- 将模块文件(例如
rejson.so
)放到Redis的module
目录下。 - 修改Redis配置文件
redis.conf
,添加loadmodule
指令指向模块文件。 - 重启Redis服务以加载模块。
RedisJSON操作实践:
- 写入JSON:
JSON.SET user1 $ '{"name":"Brand", "age":18, "sex":"1"}'
- 删除JSON字段:
JSON.DEL user2 $.age