redis
文章平均质量分 66
JackMa_
每个优秀的人,都有一段沉默的时光,那段时光,是付出了很多努力,却得不到结果的日子,我们把它叫做扎根。
展开
-
Redis的事务和watch命令
redis的事务使用Redis管理数据,理解如何使用事务存储键值对数据很重要。Redis事务与RDMMS事务有些类似,但也有差异。Redis主要通过几个命令有效管理事务。严格意义来讲,redis的事务和我们理解的传统数据库(如mysql)的事务是不一样的。Redis中的事务(transaction)是一组命令的集合。Redis事务命令主要包括 WATCH, EXEC, DISCARD, MULTI。这些命令构成一组命令块,确保在一个步骤中全部执行。首先,它们确保事务中的命令将按顺序执行并序列化。原创 2022-03-13 22:44:32 · 702 阅读 · 0 评论 -
在php中使用redis cluster 集群
目前我们用到的 php 的 redis 扩展 主要有2个,第一个是最常用的phpredis, 它是用c写的php的高效扩展:https://github.com/phpredis/phpredis,还有1个是predis, 它是用php代码写的,也用的蛮多的:https://github.com/nrk/predis。我们分别看下他们在集群中的用法。phpredisphpredis的安装我Mac上是有安装过phpredis扩展的,但是是2.* 版本,是不支持cluster的,所以需要升级到.转载 2022-02-21 22:51:29 · 1450 阅读 · 0 评论 -
轻松搭建Redis缓存高可用集群【伪集群】
1、Redis集群方案比较 哨兵模式 在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态,如果master节点异常,则会做主从切换,将某一台slave作为master,哨兵的配置略微复杂,并且性能和高可用性等各方面表现一般,特别是在主从切换的瞬间存在访问瞬断的情况 高可用集群模式 redis集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。Redis集群不需要sentinel哨兵也能完成节点移除和故障转原创 2022-02-21 22:47:14 · 313 阅读 · 0 评论 -
“Redis:WARNING: redis-trib.rb is not longer available”错误处理
redis-6.2.5集群安装,启动集群执行:redis-trib.rb create --replicas 1 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385的时候报错如下:WARNING: redis-trib.rb is not longer available!You should use redis-cli instead.All commands .原创 2022-02-21 21:05:45 · 1604 阅读 · 0 评论 -
面试官:如何保持mysql和redis中数据的一致性?
如何保证缓存和数据库一致性,这其实是一个老生常谈的话题了。但很少人能真正把这个问题讲明白,例如:到底是更新缓存还是删缓存? 到底选择先更新数据库,再删除缓存,还是先删除缓存,再更新数据库? 为什么要引入消息队列保证一致性? 延迟双删到底什么?会有什么问题?到底要不要用? ...下面我们就来把这些问题「彻底」讲清楚。内容稍微有点长,但干货很多,希望你可以耐心读完。引入缓存提高性能我们从最简单的场景开始讲起。如果你的业务处于起步阶段,流量非常小,那无论是读请求还是写请求转载 2022-02-12 20:35:07 · 385 阅读 · 0 评论 -
PHP实现Redis分布式锁
代码如下:class RedisLock{ protected $_genLockLogLockKey = "#gen##lock##log##lock#"; protected $_genLockLogLockValue = "#gen##lock##log##lock^^expire#value#"; protected $redis; const REDIS_LOCK_DEFAULT_EXPIRE_TIME = 60; public functi原创 2021-04-15 11:20:23 · 276 阅读 · 0 评论 -
Redis应用场景
缓存作为Key-Value形态的内存数据库,Redis 最先会被想到的应用场景便是作为数据缓存。而使用 Redis 缓存数据非常简单,只需要通过string类型将序列化后的对象存起来即可,不过也有一些需要注意的地方:必须保证不同对象的 key 不会重复,并且使 key 尽量短,一般使用类名(表名)加主键拼接而成。 选择一个优秀的序列化方式也很重要,目的是提高序列化的效率和减少内存占用。...原创 2020-04-07 14:39:26 · 393 阅读 · 0 评论 -
Redis主从复制以及主从复制原理
Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。概述在现有企业中 80%公司大部分使用的是 redis 单机服务,在实际的场...转载 2020-04-05 13:26:51 · 249 阅读 · 0 评论 -
Centos7安装Redis
一、安装gcc依赖由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装[root@localhost local]# yum install -y gcc二、下载并解压安装包[root@localhost local]# wget http://download.redis.io/releases...转载 2020-04-05 13:06:08 · 210 阅读 · 1 评论 -
Redis常见的使用场景
什么是Redis?Redis是一个非常快速的开源非关系、Key-Value数据库,通常称为数据结构服务器;它存储了五种不同类型值的键映射。用作数据库,缓存和消息代理。Redis和其他键值数据库之间的主要区别之一是Redis存储和操作高级数据类型的能力。这些数据类型是大多数开发人员熟悉的基本数据结构(列表,映射,集合和排序集)。Redis的卓越性能,简单性和数据结构的原子操作有助于解决使用传...转载 2020-03-27 19:42:40 · 2556 阅读 · 0 评论 -
redis在php中使用的常用命令
<?php/*1.Connection*/ $redis = new Redis(); $redis->connect('127.0.0.1',6379,1);//短链接,本地host,端口为6379,超过1秒放弃链接 $redis->open('127.0.0.1',6379,1);//短链接(同上) $redis->pconnect('12...转载 2020-03-16 11:50:43 · 451 阅读 · 0 评论 -
深入学习Redis(1):Redis内存模型
前言Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分。我们使用Redis时,会接触Redis的5种对象类型(字符串、哈希、列表、集合、有序集合),丰富的类型是Redis相对于Memcached等的一大优势。在了解Redis的5种对象类型的用法和特点的基础上,进一步了解Redis的内存模型,对Redis的使用有...转载 2020-02-27 17:44:28 · 596 阅读 · 0 评论 -
《吊打面试官》系列- Redis基础
小伙子您好,看你简历上写了你项目里面用到了Redis,你们为啥用Redis?心里忍不住暗骂,这叫啥问题,大家不都是用的这个嘛,但是你不能说出来。认真回答道:帅气迷人的面试官您好,因为传统的关系型数据库如Mysql已经不能适用所有的场景了,比如秒杀的库存扣减,APP首页的访问流量高峰等等,都很容易把数据库打崩,所以引入了缓存中间件,目前市面上比较常用的缓存中间件有 Redis 和 Memca...转载 2020-02-25 14:26:22 · 1231 阅读 · 0 评论 -
windows中php7引入redis扩展
首先下载最新版的igbinary和redis的dll包,解压后放到对饮的ext文件夹下https://windows.php.net/downloads/pecl/releases/以下软件一定要根据自己的php版本,线程安全,cpu架构来下载!不然肯定报错! cpu架构,线程安全参考另外一篇文章: http://blog.csdn.net/zhezhebie/article/details/72...转载 2018-05-31 01:23:01 · 727 阅读 · 0 评论 -
Redis数据结构介绍及应用场景及基本命令
一、string--字符串介绍:字符串类型实际上可以是字符串 (简单的字符串、复杂的字符串(xml、json)、数字(整数、浮点数)、二进制(图片、音频、视频)), 但最大不能超过512M。String 数据结构是简单的 key-value 类型,value 不仅可以是 String,也可以是数字(当数字类型用 Long 可以表示的时候encoding 就是整型,其他都存储在 sdshdr...原创 2019-03-07 19:11:55 · 815 阅读 · 0 评论 -
redis和memcached的优缺点及区别
1. 使用redis有哪些好处?(1) 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)(2) 支持丰富数据类型,支持string,list,set,sorted set,hash(3) 支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行(4) 丰富的特性:可用于缓存,消息,按key设置过期...转载 2019-03-20 16:49:25 · 445 阅读 · 0 评论 -
分布式缓存Redis之与Memcached的比较
写在前面 本学习教程所有示例代码见GitHub:https://github.com/selfconzrr/Redis_Learning 由于在项目中并没有使用Memcached,所以在这贴出Memcached的教程,以备不时之需。 http://www.runoob.com/Memcached/Memcached-tutorial.html Redis的作者Salvator...转载 2019-03-20 17:15:54 · 261 阅读 · 0 评论 -
分布式缓存Redis+Memcached经典面试题和答案
Redis相比memcached有哪些优势?(1) memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型(2) redis的速度比memcached快很多(3) redis可以持久化其数据Redis支持哪几种数据类型?String、List、Set、Sorted Set、hashesRed...转载 2019-03-20 17:51:41 · 305 阅读 · 0 评论 -
阿里云Redis开发规范
原文:https://yq.aliyun.com/articles/531067一、键值设计1. key名设计(1)【建议】: 可读性和可管理性以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:idugc:video:1(2)【建议】:简洁性保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:user:{u...转载 2019-04-17 17:34:10 · 177 阅读 · 0 评论 -
windows下安装redis及其客户端
首先下载redis安装包:https://github.com/MSOpenTech/redis/releases解压安装包到相应文件夹,任何盘符都行。文件介绍:redis-server.exe:服务端程序,提供redis服务redis-cli.exe: 客户端程序,通过它连接redis服务并进行操作redis-check-dump.exe:本地数据库检查redis-check-aof.exe:更...原创 2018-05-30 23:54:08 · 28910 阅读 · 2 评论