组件学习redis使用 linux 2023-01-19 Source Edit History undefined 命令方法12345678# docker 启动 redisdocker run --name redis -d -p 6379:6379 redis:tag --requirepass "root"# 查看对象的编码object encoding msg # 查看所有的 key keys *
组件学习redis原理 linux 2023-01-19 Source Edit History undefined 事务MySQL:ACID Redis 单条命令是保证原子性的,但是事务不保证原子性。Redis 事务没有隔离级别的概念,所有的命令在事务中,并没有直接被执行,只有发起执行命令的时候才会执行 Redis 的事务: 开启事务(multi) 查看更多
组件学习redis原理 linux 2023-01-19 Source Edit History undefined Redis 和 MySQL 的联系和区别一、区别 Mysql是关系型数据库,主要用于存放持久数据,将数据存放在硬盘中,读取速度相对较慢。每次请求访问数据库时,都存在着I/O操作,如果反复频繁的访问数据库会产生以下问题: 会在反复链接数据库上花费大量的时间,从而导致运行效率过慢 反复的访问数据库也会导致数据库的负载过高,那么此时缓存的概念就衍生出来了 查看更多
组件学习redis多机数据库的原理 linux 2023-01-19 Source Edit History undefined Codis 原理一、Codis 的整体架构和基本流程Codis 集群中包含了 4 类关键组件 codis server:基于 redis 3.2.8 二次开发的 redis 实例,其中增加了额外的数据结构,支持数据迁移操作,主要负责处理具体的数据读写请求 codis proxy:接收客户端请求,并把请求转发给 codis server Zookeeper 集群:保存集群元数据,例如数据为止信息和 codis proxy 信息。codis 也可以使用 etcd 或本地文件系统保存元数据信息 查看更多
组件学习redis多机数据库的原理 linux 2023-01-19 Source Edit History undefined 切片集群如果redis要存储的数据量特别大,那么进行RDB持久化时会使主线程的写请求因为要申请内存而变慢。因此只是提升单台机器的CPU、mem是不能解决问题的。要考虑切片集群(多个redis实例组成一个集群) 切片集群面临问题 数据切片后,在多个实例之间如何分布? 数据端怎么确定想要访问的数据在那个实例上? 查看更多
组件学习redisredis基础 linux 2023-01-19 Source Edit History undefined NoSQL 的四大分类1. kV键值对2. 文档型数据库( bson 格式和 json 一样) MongoDB 基于分布式文件存储的数据库,C++编写,主要用来处理大量的文档 是一个介于关系型数据库和非关系型数据库中间的产品 MongoDB 是非关系型数据库中功能最丰富、最像关系型数据库的 查看更多
组件学习redisredis基础 linux 2023-01-19 Source Edit History undefined Redis 批量操作一、为什么需要批量执行 redis 指令Redis 协议采用的是客户端-服务器方式,客户端发送一条指令,服务端解析指令并执行,然后向客户端返回结果。客户端发起一次 redis 请求主要有如下开销: socket IO 导致的上下文切换开销。一次 redis 请求在客户端和服务端分别会存在一次 read() 和 一次 write() 系统调用。 高并发下资源竞争和系统调用。 在客户端,如果采用调用多次 redis 指令来完成某个服务请求,那么在高并发下,多个请求会在多个线程中同时竞争 redis 连接资源多次,导致连接池压力增加,线程上下文切换频繁。如果每个请求只抢占一次 redis 连接并通过批量执行的方式一次处理多个请求,则单次请求的效率会显著提升 查看更多
组件学习redisredis基础 linux 2023-01-19 Source Edit History undefined Redis 入门概述 Redis 是什么? Redis(Remote Dictionary Server),即远程字典服务 是一种开源的使用 C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的API 查看更多
组件学习redis多机数据库的原理 linux 2023-01-19 Source Edit History undefined Redis的高可靠性:1. 数据尽量少丢失 2. 服务尽量少中断。AOF和RDB 保证了前者,对于后者增加了副本冗余量,即将一份数据同时保存在多个实例上。 问题:多副本,他们之间的数据如何保持一致呢?数据读写操作可以发给所有的实例吗? Redis数据同步Redis提供主从库模式,保证数据副本的一致,主从库之间采用的是读写分离的方式 读操作:主库、从库都可以接收 写操作:首先到主库执行,然后,主库将写操作同步给从库 查看更多