redis 系列4 数据结构之链表
一. 概述
链表提供了高效的节点重排能力,以及顺序性的节点访问方式,并且可能通过增删节点来灵活地调整链表的长度。作为一种数据结构,在C语言中并没有内置的这种数据结构。所以Redis构建了自己的链表实现。链表在Redis中应用非常多,比如列表键的底层实现之一就是链表,当一个列表键包含了数量比较...[2018/11/2]
Redis全方位讲解--主从复制和哨兵模式
前言
前面介绍了redis持久化和容灾备份,这篇会介绍redis主从复制和redis持久化在主从复制中的一些应用。因为本人没有那么多服务器或机器,所以这里主要介绍下如何在docker容器中搭建主从复制以及搭建过程中遇到的一些问题。关于redis的深入讲解,这边博客《深入学习Redis(3):...[2018/11/2]
redis 系列3 简单动态字符串 SDS
一. SDS概述
Redis 没有直接使用C语言传统的字符串表示,而是自己构建了一种名为简单动态字符串(simple dynamic string, SDS)的抽象类型,并将SDS用作Redis的默认字符串表示。Redis只会使用C字符串作为字面量。在Redis里,使用SDS来表...[2018/11/1]
Redis事务涉及的watch、multi等命令Redis事务涉及的watch、multi等命令
Redis Watch 命令
作用:
用于监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断。
用法:
redis 127.0.0.1:6379> WATCH key1 key2
OK
Redis Unwatch 命令
作用: ...[2018/11/1]
redis 系列2 知识点概述redis 系列2 知识点概述
一.概述
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bi...[2018/10/31]
深入学习Redis(5):集群
前言
在前面的文章中,已经介绍了Redis的几种高可用技术:持久化、主从复制和哨兵,但这些方案仍有不足,其中最主要的问题是存储能力受单机限制,以及无法实现写操作的负载均衡。
Redis集群解决了上述问题,实现了较为完善的高可用方案。本文将详细介绍集群,主要内容包括:集群的作用;集群的搭建方法及设...[2018/10/31]
Redis 数据类型归纳
Redis的数据类型从整体上看,都是Key-Value键值对的模型,数据类型更确切地说,应该是Value的数据类型,比如string,set,list等,都是key值对应的Value的数据集合格式。不同数据类型的不同之处在于Value存储的格式不一样。
整体上看,Re...[2018/10/29]
Redis高级特性---------事务与持久化与发布订阅
一、redis事务的用法
1.开启事务:multi
2.提交事务:exec ( queued只是把指令放入队列中,没有执行)
3.取消事务:discard
4.redis事务不能保证同时成功或者失败进行提交或者回滚,比如下图中 姓名报错而年龄增加了
5...[2018/10/26]
Redisson分布式锁实现
1. 基本用法 <dependency><groupId>org.redi on</groupId><artifactId>redi on</artifactId><version>3.8.2</versio...[2018/10/23]
Redis阻塞诊断基础Redis阻塞诊断基础
slowlog Redis慢查询
slowlog 参数
slowlog-log-slower-than: 慢查询时间阈值,超过这个阈值的查询将会被记录,默认值10000,但是微妙,也即10毫秒。
slowlog-max-len:慢查询日志最大条数,默认值128,先进先出的队...[2018/10/23]
Redis全方位详解--数据类型使用场景和redis分布式锁的正确姿势
一、Redis数据类型
1.string
string是Redis的最基本数据类型,一个key对应一个value,每个value最大可存储512M。string一半用来存图片或者序列化的数据。
2.hash
相当于一个string类型的映射表。特别...[2018/10/22]
浅谈Redis之慢查询日志
首先我们需要知道redis的慢查询日志有什么用?日常在使用redis的时候为什么要用慢查询日志?
第一个问题:
慢查询日志是为了记录执行时间超过给定时长的redis命令请求
第二个问题:
让使用者更好地监视和找出在业务中一些慢redis操作,找到更好的优化方法
在Redi...[2018/10/19]
Redis的安装与配置
当前redis最新稳定版本是4.0.9
最新稳定版本下载链接:http: download.redis.io/release redis-4.0.9.tar.gz
step1:下载
wget http: download.redis.io/release redis-4.0.9....[2018/10/18]
redis 集群 遇坑1redis 集群 遇坑1
redis 集群 遇坑1
redis集群需要开2个端口 一个是客户端连接端口 一个是 集群总线端口
集群总线端口 是 客户端端口 + 10000
如 客户端端口是 6380 则集群总线端口 为 16380
每个客户端 执行 flushall 和 cluster reset 恢复初始状态 然后再建集...[2018/10/17]
Redis 的各项功能主要解决了什么问题
先看一下Redis是一个什么东西。官方简介解释到:
Redis是一个基于BSD开源的项目,是一个把结构化的数据放在内存中的一个存储系统,你可以把它作为数据库,缓存和消息中间件来使用。同时支持strings,lists,hashes,sets,sorted sets,bitmaps,hyperl...[2018/10/16]
Redis偶发连接失败案例分析
【作者】
张延俊:携程技术保障中心资深DBA,对数据库架构和疑难问题分析排查有浓厚的兴趣。
寿向晨:携程技术保障中心高级DBA,主要负责携程Redis及DB的运维工作,在自动化运维,流程化及监控排障等方面有较多的实践经验,喜欢深入分析问题,提高团队运维效率。
【问题描述】
?生产环境有一个Re...[2018/10/15]
redis 系列1 linux下安装说明redis 系列1 linux下安装说明
一. 安装环境
操作系统:centos 7 ,redis版本4.06,客户端windows 7 ,vs2015。
1.1 安装前的条件 yum -y install gcc-c++
判断是否安装了gcc-c++ ,脚本如下:
[hsr@xuegod64 ~]...[2018/10/15]
Redis偶发连接失败案例实战记录Redis偶发连接失败案例实战记录
前言
本文主要给大家介绍了关于Redis偶发连接失败的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧
【作者】
张延俊:携程技术保障中心资深DBA,对数据库架构和疑难问题分析排查有浓厚的兴趣。
寿向晨:携程技术保障中心高级DBA,主要负责携程Red...[2018/10/15]
Redis系列(二):Redis的数据类型及命令操作Redis系列(二):Redis的数据类型及命令操作
Redis 中常用命令
Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考。这里只列举常用到几个基本命令。
命令
行为
set key value
设置 key 值为 value
get key
读取 key 的值
del key...[2018/10/12]
redis-trib.rb命令详解
redis-trib.rb是官方提供的Redis Cluster的管理工具,无需额外下载,默认位于源码包的src目录下,但因该工具是用ruby开发的,所以需要准备相关的依赖环境。
准备redis-trib.rb的运行环境
wget https: cache.ruby-la...[2018/10/12]
使用golang写一个redis-cli的方法示例使用golang写一个redis-cli的方法示例
0. redis通信协议
redis的客户端(redis-cli)和服务端(redis-server)的通信是建立在tcp连接之上, 两者之间数据传输的编码解码方式就是所谓的redis通信协议。所以,只要我们的redis-cli实现了这个协议的解析和编码,那么我们就可以完成所有的redis...[2018/10/12]
Redis系列(一):Redis的简介与安装
什么是 Redis
Redis 是一个使用ANSI C 编写的开源、支持网络协议、基于内存、可选持久性的键值对数据库,它是一个NOSQLnot only sql)数据库,也就是常说的非关系型数据库。从 2005 年开始,Redis 的开发由 Redis Labs 赞助,之前一直被 Pivot...[2018/10/11]
Redis(一):NoSQL入门和概述
NoSQL入门和概述目录导航:
NoSQL入门概述
3V+3高
当下的NoSQL经典应用
NoSQL数据模型简介
NoSQL数据库的四大分类
在分布式数据库中CAP原理CAP+BASE
NoSQL 入门概述
互联网时代背景下的大机遇,为什么用NoSQL
单机MyS...[2018/10/11]
Redis(四):解析配置文件redis.conf
解析配置文件redis.conf目录导航:
它在哪
Units单位
INCLUDES包含
GENERAL通用
SNAPSHOTTING快照
REPLICATION复制
SECURITY安全
LIMITS限制
APPEND ONLY MODE追加
常见配置redis.conf...[2018/10/11]
[原创]分布式系统之缓存的微观应用经验谈(二) 【主从和主备高可用篇】
前言 近几个月一直在忙些琐事,几乎年后都没怎么闲过。忙忙碌碌中就进入了2018年的秋天了,不得不感叹时间总是如白驹过隙,也不知道收获了什么和失去了什么。最近稍微休息,买了两本与技术无关的书,其一是 Yann Martel 写的《The High Mountains of Portugal》(葡萄牙...[2018/10/11]
深入理解Redis高可用方案-Sentinel
Redis Sentinel是Redis的高可用方案。是Redis 2.8中正式引入的。
在之前的主从复制方案中,如果主节点出现问题,需要手动将一个从节点升级为主节点,然后将其它从节点指向新的主节点,并且需要修改应用方主节点的地址。整个过程都需要人工干预。
下面通过日志具...[2018/10/10]
Redis(二):Redis入门介绍
入门概述
是什么
Redis:REmote DIctionary Server(远程字典服务器)
是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(Key/Value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热...[2018/10/10]
Redis-复制
复制 A few things to understand ASAP about Redis replication. 1) Redis replication is asynchronous, but you can ...[2018/10/9]
Redis的持久化
RDB RDB是将当前数据生成快照保存到硬盘上。 RDB的工作流程: 1. 执行bgsave命令,Redis父进程判断当前是否存在正在执行的子进程,如RDB/AOF子进程,如果存在bgsave命令直接返回。 2. 父进程执行fork操作创建子进程,fork操作过程中父进程被阻塞。 3...[2018/10/8]
深入理解redis数据类型
转载请注明出处:https: www.cnblogs.com/wenjunwei/p/9720033.htmlredis的存储模型 redis不是普通的键值对存储,它实际上是一个数据结构存储服务器,可以支持不同类型的值。这意味着redis相比传统键值对字符串key和字符串value存储来说,redi...[2018/9/30]
为什么我们做分布式使用Redis?
绝大部分写业务的程序员,在实际开发中使用 Redis 的时候,只会 Set Value 和 Get Value 两个操作,对 Redis 整体缺乏一个认知。这里对 Redis 常见问题做一个总结,解决大家的知识盲点。 1、为什么使用 Redis 在项目...[2018/9/28]
redis必会
1.NosqL 非关系型数据库,里面包含Redis和MondoDB 2.为什么会用到关系型数据库?因为当数据量太多,访问人数过多的时候,在访问关系型数据库时会到硬盘里进行读写过多 这样就会导致访问速度很慢,服务器压力很大。 3.这个时候,我们就可以使用非关系型数据库,它...[2018/9/26]
redis在php中常用的语法(转)
String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 $redis->set('key','TK'); $redis->set(&#...[2018/9/26]
nodejs使用redisnodejs使用redis
expre 的expre -se ion默认是保存到内存中的,保存到内存不利于持久化,不利于分布式。 我们看看如果把se ion保存到redi中。 使用到的模块 expre expre -se ion redis connect-redis 创建redis客户端 var client&...[2018/9/25]
Redis学习笔记(二)
解读Retwis官网例子
Redis需要考虑需要哪些keys以及对应的value使用合适的数据类型进行存储。在retwis例子中,我们需要users,user的粉丝列表, user的关注用户列表等等。
Users
和传统的关系型数据库一样,每个用户有一个唯一的id关联,使用INCR创建唯一的id...[2018/9/25]
Redis 编译安装
系统学习一下,记录一下笔记,之前都是断断续续尝试过一些简单的安装使用
下载,解压
编译安装
copy配置文件
启动连接
./bin/redis-serv...[2018/9/25]
Redis学习笔记(三)使用Lua脚本实现分布式锁
Redis在2.6推出了脚本功能,允许开发者使用Lua语言编写脚本传到Redis中执行。
使用Lua脚本的好处如下:
1.减少网络开销:本来5次网络请求的操作,可以用一个请求完成,原先5次请求的逻辑放在redis服务器上完成。使用脚本,减少了网络往返时延。
2.原子操作:Redis...[2018/9/25]
Redis的Errorlog或者启动日志(错误日志)的配置
Errorlog或者是运行日志是任何一个软件的运行中异常诊断必看的文件之一,折腾Redis的过程中以为有默认的错误日志(或启动日志),不过一直没有发现类似的日志文件,在看了默认的配置文件之后,发现Redis默认并没有配置ErrorLog,上面写的很清楚,如果没有指定logfile...[2018/9/25]
Redis物理文件结构
Redis物理文件结构
对于数据库,个人习惯先从物理结构文件入手,整体上看一下有哪些文件,都是什么作用。类似于MySQL,数据文件和配置文件是Redis最基本也是做主要的两个物理文件之一,相比MySQL或者其他数据库,Redis的相关的物理文件相当的简单。与My...[2018/9/25]
Redis安全以及备份还原
启用密码
配置密码,配置文件中添加节点requirepa ,如下root即pa wordrequirepa root可以在登陆的时候用-a 指定pa word登陆,也可以不指定,登陆之后使用auth执行密码
备份还原
严格说Redis中的save并算是备份命令...[2018/9/25]
redis学习笔记(三)redis学习笔记(三)
Spring data redis:
要求:
Redis 版本 > 2.6
与 Lettuce 或 Jedis 集成,两种java开源Redis库.
Spring redis主要做的两件事:
连接Redis,不管使用哪种库,RedisConnection以及RedisConnection...[2018/9/25]
C# Redis 过期机制不生效问题
引用: https: ask.csdn.net/question 358802 根据这里的代码写出监听事件后,事件并没有生效
在比对了多次配置文件后,终于发现了一点蹊跷,在配置中不能有与之相冲的配置,于是处理方法就很简单了。
将无关监听事件注释,再把自己需要的取消注释,即可让监听事件...[2018/9/25]
Redis 主从复制
启动多个Redis实例,如果是在单机下,复制出来两份Redis编译后的文件
cp -r /usr/local/redis5/ /usr/local/redis5_1
cp -r /usr/local/redis5/ /usr/local/redis...[2018/9/25]
redis(一)
1、Redis发展史
Redis[Remote Directory Server]:远程服务器字典 以字典形式存储数据,底层是C语言编写的,提供多种语言的API,比如Python,PHP,Ruby,Java等,支持非常多的数据类型,字符串类型,列表、集合、哈希等。支持字典的所有操作。push。...[2018/9/25]
redis-4.0.11主从配置初步探究
redis-4.0.11相较于以前版本,新增了几个安全措施,稍稍研究了6379.conf配置文件,在这里记录一下.
实验环境: centos7.4 redis:redis-4.0.11
1. redis-4.0.11.tar.gz解压后直接执行安装脚本.
2. ~/redis-4.0.1...[2018/9/25]
redis的一命令redis的一命令
参考http: redisdoc.com/
参考http: redis.io/commands
连接操作相关的命令
默认直接连接 远程连接-h 192.168.1.20 -p 6379
ping:测试连接是否存活如果正常会返回pong
echo:打印
select...[2018/9/25]
如何防范和应对Redis勒索,腾讯云教你出招
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~
本文由腾讯云数据库 TencentDB发表于云+社区专栏
9月10日下午,又一起规模化利用Redis未授权访问漏洞攻击数据库的事件发生,此次黑客以勒索钱财作为目的,猖狂至极,甚至直接删除数据库数据。由于腾讯云早在17年就发现过Re...[2018/9/25]
五个步骤教你理清Redis与Memcached的区别五个步骤教你理清Redis与Memcached的区别
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~
本文由Super发表于云+社区专栏
memcached和redis,作为近些年最常用的缓存服务器,相信大家对它们再熟悉不过了。前两年还在学校时,我曾经读过它们的主要源码,如今写篇笔记从个人角度简单对比一下它们的实现方式,权当做复习...[2018/9/25]