E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
redis学习笔记
redis学习笔记
(二)JedisCluster + redis 3.2.5集群
redis系列文章目录Redis利用Hash存储节约内存使用spring-data-redis实现incr自增
Redis学习笔记
(九)redis实现时时直播列表缓存,支持分页[热点数据存储]
Redis学习笔记
快乐崇拜234
·
2016-12-16 10:22
redis
redis学习教程
python操作
redis学习笔记
python操作
redis学习笔记
Redis服务器的所有数据都是基于内存的,不同于memcached,Redis可以实现1.存储数据到磁盘,方便断电重启和提升可靠性2.保存旧数据3.提供多种数据结构,不限于简单字符串在
dreams512
·
2016-12-15 22:15
python
redis学习笔记
(一)redis3.2.5集群安装与测试
redis系列文章目录Redis利用Hash存储节约内存
Redis学习笔记
(九)redis实现时时直播列表缓存,支持分页[热点数据存储]
Redis学习笔记
(八)redis之lua脚本学习
Redis学习笔记
快乐崇拜234
·
2016-12-05 23:00
redis
redis学习教程
Redis 学习笔记
Redis学习笔记
原创编写:王宇2016-11-07
Redis学习笔记
Redis环境配置RedisRedis数据类型(5种)Redis命令Redis操作Keys命令Redis-Strings命令列表Redis-Hashes
mrwangyu
·
2016-12-03 13:46
大数据
Redis学习笔记
Redis是一个远程内存数据库,复制特性和提供了不同类型的数据结构,非关系数据库可以存储键和五种不同类型的值之间的映射,可以将存储在内存的键值对数据持久化到硬盘,可以使用复制特性来扩展读性能,使用客户端分片来扩展写性能,用户可以将Redis扩展成一个能够包含数百GB数据,上百万TPS的系统。Redis不使用表,也不会预定义或强制去要求用户对Redis存储的数据进行关联。Memcached和Redi
Tian_Ex
·
2016-11-21 09:22
开源项目
redis学习笔记
(2)主从复制
什么是redis主从复制当想master端写入数据时,通过redissync机制将数据文件发送至slave端,确保slave端的数据和master数据一致。主从复制的特点1、一个master可以有多个slave2、Master下的Slave还可以接受同一架构中其它slave的链接与同步请求,实现数据的级联复制,即Master->Slave->Slave模式3、Master以非阻塞的方式同步数据至s
攻城的蒂巴格
·
2016-08-08 14:56
redis
Redis学习笔记
10--Redis主从复制
阅读更多redis主从复制配置和使用都非常简单。通过主从复制可以允许多个slaveserver拥有和masterserver相同的数据库副本。下面是关于redis主从复制的一些特点:1.master可以有多个slave2.除了多个slave连到相同的master外,slave也可以连接其他slave形成图状结构3.主从复制不会阻塞master。也就是说当一个或多个slave与master进行初次同
sichunli_030
·
2016-08-06 16:00
Redis学习笔记
7--Redis管道(pipeline)
阅读更多redis的管道(Pipelining)操作是一种异步的访问模式,一次发送多个指令,不同步等待其返回结果。这样可以取得非常好的执行效率。这就是管道,调用方法如下:@Testpublicvoidtest3Pipelined(){Jedisjedis=newJedis("localhost");Pipelinepipeline=jedis.pipelined();longstart=Syste
sichunli_030
·
2016-08-06 16:00
Redis学习笔记
七——向集群节点添加、删除和分配slot
上边文章讲了如何搭建redis集群,这边文章讲集群节点的添加、删除和重新分配slot。1、添加节点添加节点:redis-trib.rbadd-node192.168.72.100:7006192.168.72.100:7005前面的IP加端口号是要添加的redis节点,后面的IP和端口号是集群中的任意一个节点。2、为节点分配slot为节点分配slot:redis-trib.rbreshard192
哈利路亚--Java
·
2016-07-28 21:39
NoSQL数据库
Redis学习笔记
六——搭建redis集群(非分布式真正的cluster)
要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下:127.0.0.1:7000127.0.0.1:7001127.0.0.1:7002127.0.0.1:7003127.0.0.1:7004127.0.0.1:70051、redis集群配置:将redis.conf复制一份作为redis-cluste
哈利路亚--Java
·
2016-07-28 14:36
NoSQL数据库
Redis学习笔记
五——启动警告问题的解决
如果启动前不对linux内核做任何更改,那么redis启动会报出警告,共三个:如下图所示第一个警告:TheTCPbacklogsettingof511cannotbeenforcedbecause/proc/sys/net/core/somaxconnissettothelowervalueof128.意思是:TCPbacklog设置值,511没有成功,因为/proc/sys/net/core/s
哈利路亚--Java
·
2016-07-23 20:38
redis优化
redis
NoSQL数据库
Redis学习笔记
五:redis主从复制
通常使用redis时,如果redis存储的是一些非常重要的数据,那么只配置一台服务器的redis是有风险的,以为如果主服务器宕机,影响到正常业务之外,最终要的是数据的丢失,因此我们常常会配置多台redis做集群,除了防止主机宕机,我们还可以实现读写分离,任务分离等。为了使redis其高可用,redis在2.4版本后加入了sentinel功能,主要功能是在主机宕机时自动选举出一个slave,并且将其
军衔
·
2016-07-22 13:27
Redis
Redis学习笔记
四——redis安全设置
Redis的安全设计是在"Redis运行在可信环境"这个前提下做出的,在生产环境运行时不能允许外界直接连接到Redis服务器上,而应该通过应用程序进行中转,运行在可信的环境中是保证Redis安全的最重要方法。1.为redis设置密码在redis.conf中进行配置:requirepasshellocarl通过命令设置:CONFIGsetrequirepass"hellocarl"由于Redis的性
哈利路亚--Java
·
2016-07-21 18:48
NoSQL数据库
Redis学习笔记
三——redis分布式安装
Redis分布式安装的配置基本redis安装查看上篇博客redis安装windows与linux平台对分布式的配置基本相同。分布式安装只需要将redis.windows.conf配置文件复制一份,然后再按如下修改:只需要将注释去掉:其中masterip为主redis的ip,masterport为主redis的端口号#slaveof如果主redis服务器有密码将下面注释去掉,master-passw
哈利路亚--Java
·
2016-07-21 18:07
NoSQL数据库
Redis学习笔记
二——redis安装
Windows下Redis安装下载windows版本redis或者github下载解压下载的压缩包即为下图的内容:启动的三种方式:进入downloads文件夹选择需要的版本解压进入文件夹:第一种方式不加配置文件方式:双击redis-server.exe;或者在当前目录ctrl+鼠标单击选择"在此处打开命令窗口",然后将redis-server.exe拖拽进命令窗口回车,或者在命令窗口输入redis
哈利路亚--Java
·
2016-07-19 13:44
NoSQL数据库
Redis学习笔记
一——初始Redis
Redis介绍Redis是一种非关系型数据存储工具(类似于mongoDB等),这区别于传统的关系型数据库(类似于mysql等),类似于memcache,并且其内部集成了对list(链表)、set(集合)的操作,可以很方便快速的处理数据(像插入、删除list取交集并集差集等),这极大的减轻了底层数据库的压力,并且给用户更快的响应速度。Redis是一个key-value格式的存储系统。Redis提供了
哈利路亚--Java
·
2016-07-13 13:21
NoSQL数据库
Redis学习笔记
(四)-数据类型之list类型
redis的list类型其实就是一个每个子元素都是string类型的双向链表。所以[lr]push和[lr]pop命令的算法时间复杂度都是O(1)。另外list会记录链表的长度。所以llen操作也是O(1).链表的最大长度是(2的32次方-1)。我们可以通过push,pop操作从链表的头部或者尾部添加删除元素。这使得list既可以用作栈,也可以用作队列。有意思的是list的pop操作还有阻塞版本的
点解
·
2016-07-10 13:00
redis学习笔记
(18)---事件
事件之前在
redis学习笔记
(12)—server基本流程中,对redis的事件机制已经进行了简单的介绍。
u012658346
·
2016-05-12 20:00
redis学习笔记
(17)---RDB持久化
1、RDB文件redis是一个基于内存的数据库,数据库中的所有数据都是保存在内存中的。当进程退出时,内存中的数据库状态也会全部丢失。为了解决这个问题,redis提供了RDB持久化功能,RDB持久化可以将redis保存在内存中的数据存储到磁盘上,避免数据意外丢失。通过该文件,可以还原RDB文件生成时的数据库状态。2、RDB文件的创建有两个命令可以生成RDB文件:SAVE和BGSAVE。其中SAVE命
u012658346
·
2016-05-12 17:00
redis学习笔记
(16)---过期键的设置与删除
expires在之前数据库的结构中可以看到,每一个数据库除了用变量dict来保存所有的key-value对之外,还通过一个expires成员变量来保存所有设置了过期时间的keytypedefstructredisDb{dict*dict;/*数据库*/dict*expires;/*过期键集合*/......}redisDb;expires也是通过字典dict来实现的,其中每一个key-value对
禾夕
·
2016-05-11 15:45
学习笔记整理
redis
redis学习笔记
(16)---过期键的设置与删除
expires在之前数据库的结构中可以看到,每一个数据库除了用变量dict来保存所有的key-value对之外,还通过一个expires成员变量来保存所有设置了过期时间的keytypedefstructredisDb{ dict*dict;/*数据库*/ dict*expires;/*过期键集合*/ ...... }redisDb;expires也是通过字典dict来实现的,其中每一个key-va
u012658346
·
2016-05-11 15:00
redis学习笔记
(15)---redis数据库
创建数据库在redis的server端,维护着多个数据库(默认为16个)。所有的数据库以数组的形式保存在redisServer结构中structredisServer{ ...... redisDb*db;//数据库数组 intdbnum;//数据库的个数 ...... };在initServer()初始化server时,会根据dbnum来创建数据库server.db=zmalloc(sizeof
u012658346
·
2016-05-10 20:00
redis学习笔记
(14)---redis基本命令总结
概述Redis的键值可以使用物种数据类型:字符串,散列表,列表,集合,有序集合。本文详细介绍这五种数据类型的使用方法。本文命令介绍部分只是列举了基本的命令,至于具体的使用示例,可以参考Redis官方文档:Redis命令大全字符串类型字符串是Redis中最基本的数据类型,它能够存储任何类型的字符串,包含二进制数据。可以用于存储邮箱,JSON化的对象,甚至是一张图片,一个字符串允许存储的最大容量为51
u012658346
·
2016-05-10 15:00
redis学习笔记
(13)---列表命令及实现
列表命令Redis中的List对象的类型为REDIS_LIST,是一种双向链表结构,主要支持以下几种命令:LPUSH 向列表左端添加元素,用法:LPUSHkeyvalueRPUSH 向列表右端添加元素,用法:RPUSHkeyvalueLPOP 从列表左端弹出元素,用法:LPOPkeyRPOP 从列表右端弹出元素,用法:RPOPkeyLLEN 获取列表中元素个数,用法:LLENkeyLRANGE 获
u012658346
·
2016-05-10 14:00
redis学习笔记
(12)---server基本流程
server工作流程当执行./redis-server后,redis数据库的server端就会启动。然后就会执行redis.c中的main()函数其中main()函数中的工作可以主要分为以下几个部分:1、初始化server端的配置信息---initServerConfig()2、解析运行时的命令参数,并根据参数进行处理,eg:./redis-server--help3、如果设置了daemonize
u012658346
·
2016-05-09 22:00
redis学习笔记
(11)---字符串命令及实现
对象类型与编码方式对于字符串类型的命令,redis数据库会为每个对象创建一个字符串类型(REDIS_STRING)的对象。对于字符串类型的对象,可以支持三种编码方式:#defineREDIS_ENCODING_RAW0/*Rawrepresentation*/ #defineREDIS_ENCODING_INT1/*Encodedasinteger*/ #defineREDIS_ENCODING_
u012658346
·
2016-05-09 16:00
redis学习笔记
redis安装: wgethttp://redis.googlecode.com/files/redis-2.6.14.tar.gz tarzxvfredis-2.6.14.tar.gz 安装redis中的maketest命令需要先安装tcl安装包, 解压后,进入到解压包。#:make编译完成后#cdsrc&&makeinstall #maket
qq_31648761
·
2016-05-09 10:00
redis学习笔记
(10)---ubuntu下redis的安装
环境:Ubuntu3.11.3版本:redis3.0.71、Makesudomake1)如果出现错误:jemalloc/jemalloc.h:Nosuchfileordirectoryredis编译时,默认的allocator是jemalloc,而如果系统中没有安装jemalloc就会报错解决办法是利用MALLOC环境变量设置默认的分配器。sudomakeMALLOC=libc2)如果出现错误:/
u012658346
·
2016-05-08 16:00
redis学习笔记
(9)---对象robject
robject之前对redis基本的数据结构分别进行了简单的介绍,包括字符串、链表、哈希表、整数集合、压缩列表、压缩字典等,但是redis并不是直接使用这些数据结构来实现key-value对数据库的,而是基于这些数据结构为每一个对象创建一个对象robject。robject对象再根据数据类型,来选择合适的底层数据结构来存储数据。robject的定义如下:typedefstructredisObje
u012658346
·
2016-05-08 16:00
redis学习笔记
(8)---微线图sparkline
sparkline微线图,即用一个一个信息点形成的图,类似于折线图。在表示时延的时候,就可以用微线图的形式来表示。示例:微线图中的信息点可以有两种形式:”_-`”和“_o#”两种情况最后形成的微线图分别如下所示:可以看到,用一个一个的信息点,非常形象明了的形成了所需的折线图sparkline的实现sparkline中每个信息点的定义为:structsample{ doublevalue; char
u012658346
·
2016-05-06 15:00
redis学习笔记
(7)---压缩字典zipmap
zipmap在hashtable实现中,Redis引入了zipmap数据结构,保证在hashtable刚创建以及元素较少时,用更少的内存来存储,同时对查询的效率也不会受太大的影响。zipmap利用字符串实现了简单的hash表,来存储少量key-value对。内存布局zipmap的内存布局如下:1)zmlen:1个字节,记录当前zipmap中key-value对的数量。由于zmlen只有1个字节,因
u012658346
·
2016-05-06 10:00
redis学习笔记
(6)---压缩列表ziplist
ziplist压缩列表是列表键和哈希键的底层实现之一。当一个列表键只包含少量表项,并且每个列表项要么是小整数,要么是较短的字符串,那么redis就会使用压缩列表来作为列表键的底层实现。当一个哈希键只包含少量key-value对,且每个key-value对的key和value要么是小整数,要么是较短字符串,那么redis就会使用ziplist作为哈希键的底层实现。ziplist的实现:ziplist
u012658346
·
2016-05-05 11:00
redis学习笔记
(5)---整数集合intset
intset当一个集合中只包含整数,且这个集合中的元素数量不多时,redis就会使用整数集合intset作为集合的底层实现。整数集合的实现typedefstructintset{ uint32_tencoding; uint32_tlength; int8_tcontents[]; }intset;encoding:当前整数集合的编码方式length:集合中的元素个数contents:集合中元素的
u012658346
·
2016-05-04 20:00
redis学习笔记
(4)---跳表zskiplist
跳表跳表(skiplist)是一种有序的数据结构,它通过在每个节点中维护多个指向其它节点的指针,来达到快速访问的目的。跳表查找的时间复杂度平均为O(lgn),最坏情况下退化为单链表的O(n)。在大部分情况下,跳表的效率可以和平衡树相媲美,但是由于跳表的实现更加简单,因此很多地方用跳表来代替平衡树。redis使用跳表作为有序集合键的底层实现。跳表的定义在redis.h中节点定义:typedefstr
u012658346
·
2016-05-04 19:00
redis学习笔记
(3)---字典dict
字典dictredis中的字典,即hash表,其实现与Java中的HashMap基本类似。同样是基于数组和链表的,通过“拉链法”来处理碰撞。字典中的每一个key都是独一无二的,当要加入一个key-value对时,如果key在字典中已经存在,则会直接返回,而不会重新将其加入到字典中。字典的实现hash节点的定义如下:typedefstructdictEntry{ void*key; union{ v
u012658346
·
2016-05-04 16:00
redis学习笔记
(2)---链表adlist
adlistredis通过prev、next指针实现了双向链表adlist,并通过void*指向数据,用来实现泛型。与list相关的命令主要有:LPOP,LPUSH,RPOP,RPUSH,LLEN定义typedefstructlistNode{//链表节点 structlistNode*prev; structlistNode*next; void*value; }listNode; typed
u012658346
·
2016-05-03 20:00
redis学习笔记
(1)---字符串sds
字符串在C语言中,字符串通常有以下两种方式来表示:char*buf1="redis"; charbuf2[]="redis";buf1是通过一个char指针指向一个字符串字面量,其内容是不能改变的,即不能使用buf1[3]=’c’;这种方式来改变字符串中的某个字符,要改变字符串内容只能通过给buf1指针重新赋值,因此不能重用buf1指向的内存空间。buf2是一个char数组,末尾会自动有一个字节的
u012658346
·
2016-05-03 19:00
通过PHP操作Redis的简单使用--
Redis学习笔记
七
connect('127.0.0.1',6379); //选择数据库 $redis->select(3); //设置key $redis->set('weather','sun'); var_dump($redis->get('weather')); //一个方法里边如果有多个参数,该参数最好组织为数组的格式呈现 //错误的设置 //$redis->mset('heght',170,'age',
liuzp111
·
2016-04-28 23:00
php与redis扩展安装和使用-
Redis学习笔记
六
1. 安装php的redis扩展注明:安装的环境为lnmp,php的版本为PHPVersion5.4.36把phpredis扩展软件 和 其依赖软件上传到linux系统里边:解压phpredis[root@fengniu020soft]#tarzxvfphpredis.tar.gz在redis扩展解压软件目录执行指令/usr/bin/phpize作用:可以把redis扩展反过来安装进php里边,可
liuzp111
·
2016-04-28 23:00
Redis的主从模式-
Redis学习笔记
五
为了降低每个redis服务器的负载,可以多设置几个,并做主从模式。一个服务器负载“写”(添加、修改、删除)数据,其他服务器负载“读”数据主服务器数据会“自动”同步给从服务器配置redis.conf文件,配置为192.168.39.159的从服务器:#################################REPLICATION################################
liuzp111
·
2016-04-27 20:00
【Redis源码剖析】 - Redis之事务的实现原理
如果你还不熟悉这几个命令,可以先看看我的另一篇文章【
Redis学习笔记
(七)】
Xiejingfa
·
2016-04-27 20:00
redis
事务
multi
【Redis源码剖析】 - Redis之事务的实现原理
如果你还不熟悉这几个命令,可以先看看我的另一篇文章【
Redis学习笔记
(七)】
Xiejingfa
·
2016-04-27 20:00
redis
事务
multi
Redis的AOF持久化-
Redis学习笔记
四
1.append only file (AOF持久化)本质:把用户执行的每个“写”指令(添加、修改、删除)都备份到文件中,还原数据的时候就是执行具体写指令而已。开启AOF持久化(会清空redis内部的数据):(同时可以修改备份文件的名字,默认是appendonly.aof)#AOFandRDBpersistencecanbeenabledatthesametimewithoutproblems.
liuzp111
·
2016-04-26 23:00
Redis的快照持久化-
Redis学习笔记
三
Redis持久化功能 redis为了内部数据的安全考虑,会把本身的数据以文件形式保存到硬盘中一份,在服务器重启之后会自动把硬盘的数据恢复到内存(redis)的里边。数据保存到硬盘的过程就称为“持久化”效果。1. snap shotting快照持久化该持久化默认开启,一次性把redis中全部的数据保存一份存储在硬盘中,如果数据非常多(10-20G)就不适合频繁进行该持久化操作。下方是快照持久化在本
liuzp111
·
2016-04-25 20:00
Redis的具体使用-
Redis学习笔记
二
1. key的操作在redis里边,除了”\n”和空格 不能作为名字的组成内容外,其他内容都可以作为key的名字部分。名字长度不做要求。不同redis数据库切换:用select ,默认是操作数据库0,默认共有16个数据库,所以数据库Index是从0到15操作例子[root@fengniu020~]#cd/usr/local/ [root@fengniu020local]#cdredis/ [roo
liuzp111
·
2016-04-24 11:00
Redis的安装-
Redis学习笔记
一
1. 什么是Redis Redis是Remote Dictionary Server(远程数据服务)的缩写由意大利人 antirez(Salvatore Sanfilippo) 开发的一款 内存高速缓存数据库该软件使用C语言编写,它的数据模型为 key-value它支持丰富的数据结构(类型),比如 String(字符串)、list(链表)、hash(哈希)、 set(集合)、sortedse
liuzp111
·
2016-04-22 22:00
redis学习笔记
1.redis学习总结1.1key的设计和关系型数据库相对应如下key 表名:主键列:主键值:列名 value列值这是对应关系型数据库的基本设计原则,缺点是拆的太散了拆到了列。如果是存hash可以拆到主键值这个位置,那么缓存的一个hash就对应一表的一条记录了key表名:列名:列值:主键值value主键值这个是一个列对主键的映射2.把以前学的东西好好梳理下,今年养成作笔记的,不做笔记的后果就是学的
WeiJiaXiaoBao
·
2016-04-21 08:00
java
redis
Redis资料整理
jedis使用api3.
Redis学习笔记
。4.浅谈Redis数据库的键值设计5.Redis资料汇总专题6.MongoDB资料汇总专题
u013467442
·
2016-04-14 13:00
java
redis
jedis
干货--Redis 30分钟快速入门
一、redis环境搭建2二、
redis学习笔记
之数据类型3三、
redis学习笔记
之排序11四、
redis学习笔记
之事务16五、
redis学习笔记
之pipeline20六、
redis学习笔记
之发布订阅23
tanggao1314
·
2016-04-10 21:00
redis学习笔记
7--有序集合类型
有序集合类型(sortedset)特点在于“有序”二字。它在集合类型的基础上为集合中的每一个元素都关联了一个分数,这不仅可以用来完成插入、删除和判断元素是否存在等集合类型支持的操作,还能够获得分数最高(或最低)的前N个元素、获得指定分数范围内的元素等与分数有关的操作。虽然集合中每个元素都是不同的,但是它们的分数却可以相同。有序集合类型与列表类型的对比#相似点:1).二者都是有序的。2).二者都可以
旺旺的钥匙
·
2016-04-08 12:00
redis
set
sorted
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他