.修改redis服务器的配置文件 vi redis.conf 注释以下绑定的主机地址 # bind 127.0.0.1 .修改redis服务器的参数配置 修改redis的守护进程为no ,不启用 > config set daemonize "no" OK 修改redis的保护模式为no,不启用 > config set protected-mode "no" OK…
阅读目录 1 sentinel down-after-milliseconds mymaster 30000 sentinel failover-timeout mymaster 18000 sentinel parallel-syncs mymaster 1 解释说明如下: >>> sentinel monitor mymaster 127.0.0.1 6379 1 mymaster :为master redis的名称: ip和port指定了6379端口的Redis为master: q…
转: [精]搭建redis cluster集群,JedisCluster带密码访问[解决当中各种坑]! 2017年05月09日 00:13:18 冉椿林博客 阅读数:18208  版权声明:本文为博主原创文章,转载请看官大人注明出处: https://blog.csdn.net/localhost01/article/details/71436801 一.搭建redis单机 本文搭建redis3.0版本,3.0主要增加了redis cluster集群功能.   1.下载地址:http://dow…
问题描述 由于Azure Redis的性能在不同级别表现不同,当需要升级/缩放Redis的时候,从使用者的角度,需要知道有那些步骤? 注意事项? 潜在影响?停机事件窗口? 升级预估时间? 解决方案 从使用的步骤出发,升级的步骤为: 1)Azure门户页面操作 选择缩放(Scale)目录 选择需要的级别(C1 ~ C6, P1 ~P5) 点击Select按钮确认 2)使用Powershell命令 使用 Set-AzRedisCache 来缩放 Azure Redis 缓存实例,修改 Size.Sk…
背景 今天重新搭了个redis环境,用简单的代码去测试下是否正常, @RunWith(SpringRunner.class) @SpringBootTest public class SpringbootRedisApplicationTests { @Autowired StringRedisTemplate stringRedisTemplate; @Test public void saveString() { //保存字符串 stringRedisTemplate.opsForValue…
========================9.SpringBoot2.x整合Redis实战 ================================ 1.分布式缓存Redis介绍 简介:讲解为什么要用缓存和介绍什么是Redis,新手练习工具 通过缓存减少数据库访问,提高访问速度 1.redis官网 https://redis.io/download 2.新手入门redis在线测试工具:http://try.redis.io/ 2.源码编译安装Redis4.x 简介:使用源码安装Re…
由于最近新上的项目很多模块没有做数据缓存,大量的请求都会到数据库去查询,为了减轻数据库的压力以及提高网站响应速度,所以在这里采用了spring 提供的注解+redis实现对数据的缓存,主要针对非热点数据,例如 省市,银行卡列表等做缓存,在这里主要是查询做一个缓存实例. pom.xml  (加入spring和reids jar包) <!-- redis --> <dependency> <groupId>org.springframework.boot</group…
在项目中使用消息队列一般是有如下几个原因: 把瞬间服务器的请求处理换成异步处理,缓解服务器的压力 实现数据顺序排列获取 redis实现消息队列步骤如下: 1).redis函数rpush,lpop 2).建议定时任务入队列 3)创建定时任务出队列 文件:demo.php插入数据到redis队列 <?php $redis = new Redis(); $redis->connect('127.0.0.1',6379); $password = '123456'; $redis->auth($…
Java缓存机制 Java中要用到缓存的地方很多,首当其冲的就是持久层缓存,针对持久层谈一下:  要实现java缓存有很多种方式,最简单的无非就是static HashMap,这个显然是基于内存缓存,一个map就可以搞定引用对象的缓存,最简单也最不实用,首要的问题就是保存对象的有效性以及周期无法控制,这样很容易就导致内存急剧上升,周期无法控制可以采用SoftReference,WeakReference,PhantomReference这三种对象来执行(看了Ibatis的缓存机制才发现JDK居然…
基于redis实现分布式并发锁(注解实现) 说明 前提, 应用服务是分布式或多服务, 而这些"多"有共同的"redis"; (2017-12-04) 笑哭, 写这篇之前一直觉得应该有大神已经写好了, 但未找到. 其实redis官网已经给出了实现(百度.阿里都是用的这套): Redis分布式锁.Distributed locks with Redis java版本的名字叫redisson, 其github: https://github.com/redisson/re…
技术背景 首先我们需要先来了解下什么是分布式锁,以及为什么需要分布式锁. 对于这个问题,我们可以简单将锁分为两种--内存级锁以及分布式锁,内存级锁即我们在 Java 中的 synchronized 关键字(或许加上进程级锁修饰更恰当些),而分布式锁则是应用在分布式系统中的一种锁机制.分布式锁的应用场景举例以下几种: 互联网秒杀 抢优惠卷 接口幂等校验 我们接下来以一段简单的秒杀系统中的判断库存及减库存来描述下为什么需要到分布式锁: public String deductStock() thro…
1.redis-server和redis-cli安装文章:http://www.cnblogs.com/skyessay/p/6429988.html 1.前置条件:查看是否安装gcc,命令:gcc -v ,没有gcc 执行 yum install -y gcc 2.编译安装redis: redis下载地址:http://download.redis.io/releases/ 3.下载好的redis压缩包传到linxu系统中,进行解压. tar zxvf redis-5.0.3.tar.gz 4…
redis可视化工具:Redis Desktop Manager 1.redis桌面管理工具[可视化工具]下载 下载地址:https://redisdesktop.com/download 2.点击安装,完成后 3.建立新的连接 在新建连接之前,确保redis设置了密码,前一章已经设置了密码http://www.cnblogs.com/sxdcgaq8080/p/7204878.html 4.新添键值对,并得到值 在左侧db0右键,选择控制台进入 在控制台如下指令: set userName 德…
创建: 2018/03/17 [任务表]TODO 注: mac版 %开头表示命令行命令 安装    安装 % brew install redis  确认版本 % redis-server --version # 或 redis-server -v Redis server v=4.0.8 sha=00000000:0 malloc=libc bits=64 build=d791831611c260ce             服务器端  手动启动server  手动 % redis-serve…
redis默认不记录log文件,需要在Redis.conf文件,找到loglevel notice,在其后的logfile "",双引号中,写redis的路径"/redis2.8/redis.log",默认盘符是redis服务所在盘符 在保存文件时,提示readonly option is set 网上查询后总结: 方法一: This is a vim issue, not a file permission issue. If you did not have r…
7.1 Redis源码下载与编译 Redis源码下载与编译在前面已经说过了,同学们可以去第04课:GDB常用命令详解(上)学习. 编译成功后,会在src目录下生成多个可执行程序,其中redis-server和redis-cli使我们即将调试的程序,进入src目录,使用GDB启动redis-server这个程序. wzq@wzq-PC:~/Desktop/redis-5.0.3/src$ gdb redis-server GNU gdb (Debian 7.12-6+b2) 7.12.0.2016…
chapter20 Lua脚本 Redis从2.6版本开始引入对Lua脚本的支持,通过在服务器中嵌入Lua环境,Redis客户端可以使用Lua脚本,直接在服务器端原子地执行多个Redis命令 20.1 创建并修改Lua环境 创建Lua环境 载入函数库 创建redis全局表格 20.2 Lua环境写作组件 伪客户端 lua_scripts字典 struct redisServer{ /* Scripting */ // Lua 环境 lua_State *lua; /* The Lua inter…
1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize no 2. 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定 pidfile /var/run/redis.pid 3. 指定Redis监听端口,默认端口为6379,作者在自己的一篇博文中解释了为什么选用6379作为默认端口,因为6379在手机按键上MERZ对应的号码,而MERZ取自意大利歌女Alessi…
http://blog.csdn.net/canot/article/details/52040415 关于个人对Redis提供的Pub/Sub机制的认识在上一篇博客中涉及到了,也提到了关于如何避免Redis的Pub/Sub的一个最大的缺陷的思路-消息的持久化(http://blog.csdn.net/canot/article/details/51975566).这篇文章主要是关于其思路(Redis的Pub/Sub的消息持久化)的代码实现: Pub/Sub机制中最核心的Listener的实现:…
阅读目录 redis-3.2.1.master tar zxvf redis-3.2.1.tar.gz mv redis-3.2.1 redis-3.2.1.slave-1 tar zxvf redis-3.2.1.tar.gz mv redis-3.2.1 redis-3.2.1.slave-2 执行make和make test 分别进入文件夹:redis-3.2.1.master.redis-3.2.1.slave-1和redis-3.2.1.slave的src目录,执行命令: cd red…
一.前言 因为近期项目中开始使用Redis,为了更好的理解Redis并应用在适合的业务场景,需要对Redis设计与实现深入的理解. 我分析流程是按照从main进入,逐步深入分析Redis的启动流程.同时根据Redis初始化的流程,理解Redis各个模块的功能及原理. 二.redis启动流程 1.初始化server变量,设置redis相关的默认值 2.读入配置文件,同时接收命令行中传入的参数,替换服务器设置的默认值 3.初始化服务器功能模块.在这一步初始化了包括进程信号处理.客户端链表.共享对象.…
StackExchange.Redis中文使用文档 Intro 最近想深入学习一些 Redis 相关的东西.于是看了看官方的项目StackExchange.Redis,发现里面有一份文档,于是打算翻译成中文,方便大家学习参考,如果有什么翻译不准确的地方,欢迎大家指出. 文档地址: 原文文档地址: https://github.com/StackExchange/StackExchange.Redis/tree/master/Docs 中文文档地址: Github:https://github.c…
项目中使用到Redis,平常都是别人搭建的,今天试着在Google Cloud Platform 上搭建一个学习环境. 1.使用 docker pull redis 从docker hub中下载镜像 2.使用 docker images 查看是否成功安装,成功的话会显示镜像列表 3.使用 docker run --name container-name -d image-name 命令,来运行一个容器 4.使用 docker container ps 查看容器列表,若上一步成功的话,将会显示出t…
springboot+redis实现发布订阅功能,实现redis的消息队列的功能 参考:https://www.cnblogs.com/cx987514451/p/9529611.html 思考一个问题,LCN是怎么通过redis实现分布式事务的!!…
redis 添加了requirepass 123456后还是报错,原来是重新启动的时候./redis-cli  没有指定配置文件. https://blog.csdn.net/a532672728/article/details/78035559…
场景 操作系统Linux CentOS 7.2,安装Redis接口时,使用命令:gem install redis ,用于系统ruby版本过低,报错“redis requires Ruby version >= 2.2.2” 解决方案 1.查看系统ruby版本,命令:ruby -v  2.使用RVM命令行工具,可以提供一个便捷的多版本Ruby环境的管理和切换.RVM需要通过curl来进行下载, 安装curl 命令:yum install curl 3.使用curl安装rvm, 命令:gpg2 -…
在Java中使用Redis之前需要导入 jedis.jar 包,由于Redis是基于key-value进行数据存储,java中的数据存储到Redis中有许多方式,这里笔者介绍采用JSON字符串和对象序列化两种方式. 1,使用JSON方式 首先将Java对象转化为JSON字符串 然后将JSON字符串存储到Redis中 最后把JSON字符串从Redis中取出来,并且转化为Java对象 首先导入和JSON使用相关的包: gson.jar 实体类Person的代码如下: package cn.wxg.p…
背景在很多互联网产品应用中,有些场景需要加锁处理,比如:秒杀,全局递增ID,楼层生成等等.大部分的解决方案是基于DB实现的,Redis为单进程单线程模式,采用队列模式将并发访问变成串行访问,且多客户端对redis的连接并不存在竞争关系.其次Redis提供一些命令SETNX,GETSET,可以方便实现分布式锁机制. Redis命令介绍使用Redis实现分布式锁,有两个重要函数需要介绍 SETNX命令(SET if Not eXists)语法:SETNX key value功能:当且仅当 key 不…
为客户开发的一个绩效系统,采用了java web的开发方式,使用了一些spring mvc, mybatis之类的框架.相比于oracle ebs的二次开发,这种开发更加灵活,虽然和ebs集成的时候遇到一些问题,但是最后也都解决了. 在部署的时候,客户要求要能同事承受一两千人在线,相对于客户公司的总人数(七八万人),应该足够了.ebs的二次都是直接部署在oracle ebs的application server上面,之前也没怎么关注过程序的部署.这次采用tomcat部署,考虑到单个tomcat的…
背景 在业务发展过程中,会出现一些需要延时处理的场景,比如: a.订单下单之后超过30分钟用户未支付,需要取消订单b.订单一些评论,如果48h用户未对商家评论,系统会自动产生一条默认评论c.点我达订单下单后,超过一定时间订单未派出,需要超时取消订单等... 处理这类需求,比较直接简单的方式就是定时任务轮训扫表.这种处理方式在数据量不大的场景下是完全没问题,但是当数据量大的时候高频的轮训数据库就会比较的耗资源,导致数据库的慢查或者查询超时.所以在处理这类需求时候,采用了延时队列来完成. 几种延时队…