Redis 中 set 和 hset 有什么不同,各自使用场景

Redis 键(key)

Redis 键命令用于管理 redis 的键。
set 就是普通的已key-value 方式存储数据,set 存储单个大文本非结构化数据。
$redis->set($key, $field);
$redis->get($key);
$redis->del($key,);
场景:单个特殊标识,如在 redis 中创建一个 key 并设置值。

Redis 哈希(Hash)

hset 则存储结构化数据,一个 hash 存储一条数据,一个 filed 则存储 一条数据中的一个属性,value 则是属性对应的值。

Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
$redis->hset($key, $field, $value);
$redis->hget($key, $field, $value);
$redis->hdel($key, $field, $value);
场景:整表缓存到 redis 中则使用 hash ,一条数据一个hash,一个hash 里则包含多个filed(表的字段属性)。

Docker创建Redis服务容器

镜像(等于操作系统)用来创建容器,docker(像简易的一个Linux环境)是基于容器来运行的,docker仓库用来保存镜像。目前公开仓库是Docker Hub,供使用者去下载。

redis主(写)从(读)复制
面临问题:
1.机器故障
2.容量瓶颈(扩容)
Redis主从解决,节点的单一使用问题,可把多个数据复制副本部署到其它节点上进行,实现数据的高可用。
主服务器做的操作,从服务器1秒内同步,数据的复制是单向的。只能主到从,一个主节点可有多个从节点,一个从节点可有多个主节点,从节点可以有从节点。

哨兵和集群做到数据的高可用性。

Redis的配置文件:
etc/redis.conf
端口的监听 bind 0.0.0.0
保护模式 protected-mode no(不允许本地127.0.0.1 来链接)

检测是否有安装Redis
[root@localhost bin]# whereis redis-cli
redis-cli: /usr/bin/redis-cli
[root@localhost bin]# whereis redis-server
redis-server: /usr/bin/redis-server

查看docker帮助命令:docker --help
docker stop CONTAINER ID
移除容器:docker rm CONTAINER ID
移除镜像:docker rmi CONTAINER ID
创建容器:docker run -itd --name redis-slave --net mynetwork -p 6380:6379 -- ip 127.0.0.1 redis

进入到具体容器里:docker exec -it redis-slave bash
退出容器:exit

讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!