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源码
Scrapy分布式爬虫
文章目录1.Scrapy分布式原理及Scrapy-
Redis源码
解析分布式爬虫架构队列维护?redis队列去重-redis集合怎样防⽌中断?Scrapy启动判断怎样实现Scrapy-redis架构?
王大阳_
·
2020-06-29 09:23
爬虫项目
Reids 主从配置,数据存储
配置redis主从IP和port:masterandslaveipportmaster127.0.0.16379slave1127.0.0.16380slave2127.0.0.16381下载
redis
陈小陌丿
·
2020-06-29 05:21
Redis源码
阅读笔记—sds
Redis系统当中,针对字符串进行的更加完善的封装,建立了一个动态字符串,并构建了大量的实用api。相关的实现代码为sds.h及sds.c,以下为我的源码阅读笔记。内容较多,逐步更新typedefchar*sds;struct__attribute__((__packed__))sdshdr5{usignedcharflags;charbuf[];};struct__attribute__((__
weixin_39533180
·
2020-06-28 22:10
raft算法学习笔记
再看
redis源码
的过程中,发现sentinel和redis集群的实现方式都使用到了raft算法,就找了一些资料学习了以下,包括视频演示了论文,再学习完这个算法之后再去研读redis哨兵和集群的代码;教学视频
YangGangAVA
·
2020-06-28 22:52
集群技术
如何解决Redis 主从数据不一致问题
迁移前后Redis过期时间不一致针对第一个问题,Redis过期时间不一致问题,通过测试并且查阅
Redis源码
中得出如下结论:Redis社区版本在正常的主从复制也会出现过期时间不一致问题,主要是由于在主从进
weixin_34405332
·
2020-06-28 18:23
[深入理解Redis]读取RDB文件
RDB文件[
Redis源码
阅读]redis持久化文章介绍过,Redis的持久化是通过RDB和AOF实现的。Redis的RDB文件是二进制格式的文件,从这个方面再次体现了Redis是基于内存的缓存数据库
zzm_
·
2020-06-28 18:13
【
Redis源码
分析】一个对SDSHDR5是否使用的疑问
熊浩含问题提出1、在
Redis源码
中有一句注释,是对sdshdr5的解释:/*Note:sdshdr5isneverused,wejustaccesstheflagsbytedirectly.
weixin_34015566
·
2020-06-28 09:54
redis源码
分析1---结构体---简单动态字符串sds
redis源码
分析1---结构体---简单动态字符串sdsredis的底层数据结构主要有简单动态字符串,链表,字典,跳跃表,整数集合,压缩列表,对象等组成。
weixin_33781606
·
2020-06-28 05:23
Redis源码
分析-redis3.2-动态字符串sds
最近打算阅读
redis源码
,但是担心读完就忘了,所以决定把阅读的笔记在简书里记录起来,希望能够坚持读下去。之所以选择3.2是因为公司把redis升级成了这个版本。
weixin_33682719
·
2020-06-28 03:23
Redis源码
解析:08对象
前面介绍了Redis用到的所有主要数据结构,比如简单动态字符串(SDS)、双端链表、字典、压缩列表、整数集合等。然而Redis并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象这五种类型的对象,每种对象都用到了至少一种前面所介绍的数据结构。Redis在执行命令之前,根据对象的类型来判断一个对象是否可以执行
weixin_30827565
·
2020-06-28 01:23
(二)
redis源码
阅读之数据结构
目录1.SDSLib动态字符串1.1sds1.1ll2str2.adlist双端链表2.1结构体2.2实现刚开始阅读
Redis源码
的时候,最好从数据结构的相关文件开始读起,因为这些文件和Redis中的其他部分耦合最少
weixin_30824599
·
2020-06-28 01:04
redis cluster
首先,下载最新版
redis源码
并编译tarzxvfredis-5.0.4.tar.gzcdredis-5.0.4makecpsrc/redis-server/soft/redis-cluster也可以下载已编译好的二进制文件
weixin_30786617
·
2020-06-28 00:59
redis 基础数据结构实现
参考文献redis数据结构分析SkipList(跳跃表)原理详解
redis源码
分析之内存布局Redis基础数据结构与对象Redis设计与实现-第7章-压缩列表在redis中构建了自己的底层数据结构:动态字符
weixin_30622107
·
2020-06-27 22:17
Redis源码
解析01: 简单动态字符串SDS
Redis没有直接使用C字符串(以’\0’结尾的字符数组),而是构建了一种名为简单动态字符串(simpledynamicstring,SDS)的抽象类型,SDS设计API实现对字符串的各种修改。1:SDS的定义在sds.h中,定义了结构体sdshdr表示SDS,其定义如下:structsdshdr{unsignedintlen;unsignedintfree;charbuf[];};len记录SD
丑心疼
·
2020-06-27 22:20
redis集群搭建
redis,学习了redis的常用数据结构,然后就到了学习redis集群的时候了那么,学习前面应该先搭建起来redis集群以下搭建步骤是在各种找资料搭建起来的,亲测可以使用首先安装redis在这里安装的是
redis
weixin_30511039
·
2020-06-27 20:58
Redis源码
解析:19Hiredis异步API代码解析
Hiredis中的异步API函数需要与事件库(libevent,libev,ev)一起工作。因为事件循环的机制,异步环境中的命令是自动管道化的。因为命令是异步发送的,因此发送命令时,必要情况下,需要提供一个回调函数,以便在收到命令回复时调用该函数。异步API涉及到的函数分别是:redisAsyncContext*redisAsyncConnect(constchar*ip,intport);int
weixin_30471065
·
2020-06-27 20:57
redis集群搭建脚本(最简单的搭建方式)
redis集群搭建脚本>注意点1:centos7.x的系统,低版本没有尝试,失败一般发生在编译
redis源码
的时候缺少依赖>注意点2:IPADDRS的服务器间通信必须正常,防火墙关闭或开放对应集群端口>
VirtiL
·
2020-06-27 11:11
java笔记本
工具
Redis与Reactor模式
另外,作者整理了一份
Redis源码
注释,大家可以clone下来阅读。Redis是开源的缓存数据库,由于其高性能而受到大家的欢迎。
tiana_19
·
2020-06-27 09:29
redis源码
解析(一)动态字符串sds结构体
1.简介 Redis是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是字符串(String),哈希(Map),列表(list),集合(sets)和有序集合(sortedsets)等类型。 由于该库代码优美,实现巧妙,值得学习,因此从本篇开始将学习最新
Ch_ty
·
2020-06-27 06:54
redis源码解析
开源库学习
Redis源码
: 基本数据结构的实现
stringstring表示的是一个可变的字节数组,内部结构实现上类似于Java的ArrayList,采用预分配冗余空间的方式来减少内存的频繁分配。如图,内部为当前字符串实际分配的空间capacity一般要高于实际字符串长度len。当字符串长度小于1M时,扩容都是加倍现有的空间,如果超过1M,扩容时一次只会多扩1M的空间。需要注意的是字符串最大长度为512M。listRedis将列表数据结构命名为
何笙
·
2020-06-27 06:07
redis源码
分析之sever.c
#include"server.h"#include"cluster.h"#include"slowlog.h"#include"bio.h"#include"latency.h"#include"atomicvar.h"#include#include#include#include#include#include#include#include#include#include#include#
小小羽毛
·
2020-06-27 04:19
redis
Redis源码
分析二、Redis简单动态字符串
Redis简单动态字符串Redis没有直接使用C语言传统的字符串表示(以空字符结尾的字符数组,以下简称C字符串),而是自己构建了一种名为简单动态字符串(Simpledynamicstring,SDS)的抽象类型,并将SDS用作Redis的默认字符串表示。1、Redis的使用:在Redis里面,C字符串只会作为字符串字面量(stringliteral)用在一些无须对字符串值进行修改的地方,比如打印日
miqi1227
·
2020-06-26 23:33
Redis
centos7源码安装redis-5.0.0
1.下载
redis源码
包[root@localhostlocal]#wgethttp://download.redis.io/releases/redis-5.0.0.tar.gz2.解压安装包[root
Mask_NoTS
·
2020-06-26 23:32
redis
redis学习笔记之十二:使用redis-trib.rb来操作集群
n使用redis-trib.rb来操作集群redis-trib.rb是
Redis源码
中提供的一个辅助工具,可以非常方便的来操作集群,它是用ruby写的,因此需要在服务器上安装相应环境1:安装Ruby(1
yuyivie1
·
2020-06-26 23:00
redis
Redis源码
分析:字典实现(二)
本文分析的是Redis的版本为4.0.11。接口实现本文继续分析字典的接口实现。添加在分析键值对添加接口实现前,先来分析一下_dictKeyIndex()函数实现。该函数根据提供key、哈希值来获取哈希表的插入位置。如果该key在哈希表中已存在,可以通过existing参数返回dictEntry地址,并将返回值设置为-1,表示key已存在。如果dict正在进行重新哈希的过程,需要在新旧两个哈希表查
Bob Liu
·
2020-06-26 21:00
NoSQL
Redis源码
分析:字典实现(-)
本文分析的是Redis的版本为4.0.11。字典(dictionary)键值数据库(key-valuestore)是字典的数据结构,键(key)和值(value)进行关联,形成键值对,所有数据库的操作都是通过主键(primarykey)来实现的。除了用作表示数据库外,字典还是Redis底层哈希键的底层实现。字典结构定义字典结构定义位于dict.h文件中。先来看一下字典结构的定义:/*Unuseda
Bob Liu
·
2020-06-26 21:59
NoSQL
Redis源码
剖析--列表list
上一篇博客
Redis源码
剖析–快速列表带大家一起剖析了quicklist这个底层数据结构的实现原理。
ZeeCoder
·
2020-06-26 18:54
C-C++
Redis
Redis源码
剖析--快速列表quicklist
在RedisObject这一篇博客中,有介绍到list结构的底层编码类型有OBJ_ENCODING_QUICKLIST,当时就发现这个底层数据结构被我遗漏了。昨天花了点时间补了补这个知识,看完发现这货就跟STL中的deque的思想一样,顿时觉得又是一个实现超级繁琐但很实用的数据结构。今天就带大家一起来看看这个“二合一”的数据结构。quicklist是Redis在3.2版本加入的新数据结构,其是li
ZeeCoder
·
2020-06-26 18:54
C-C++
Redis
Redis源码
剖析--字符串t_string
前面一直在分析Redis的底层数据结构,Redis利用这些底层结构设计了它面向用户可见的五种数据结构,字符串、哈希,链表,集合和有序集合,然后用redisObject对这五种结构进行了封装。从这篇博客开始,带你一点点分析五种数据类型常见命令对应的源码实现,慢慢地解开Redis的面纱。字符串概述字符串是Redis中最为常见的数据存储类型,其底层实现是简单动态字符串sds,因此,该字符串类型是二进制安
ZeeCoder
·
2020-06-26 18:53
Redis
C-C++
Redis源码
剖析--对象object
前面一系列的博客分析了Redis的基本数据结构,有动态字符串sds、双端链表sdlist、字典dict、跳跃表skiplist、整数集合intset和压缩列表ziplist等,这些数据结构对于用户来说是不可见的。Redis在这些数据结构的基础上构建了对用户可见的五种类型,分别是string、hash、list、set和zset,为了更方便的使用这五种数据类型,Redis定义了RedisObject
ZeeCoder
·
2020-06-26 18:53
Redis
C-C++
Redis源码
剖析(九)对象系统概述
在Redis的源码中,到处可见robj类型的变量,在介绍其他模块时,只是将它看成Redis的数据类型,并没有深入探究。而事实上,它是对象系统,提供了对多种类型的封装,Redis可以根据数据的具体形式,采用不同的类型进行存储,一方面提高了灵活性,一方面也为节省内存提供了便利,因为Redis所有的数据都是直接存在内存中的,所以需要想方设法节省内存对象结构redisObject结构中包含了对象系统的定义
一个程序渣渣的小后院
·
2020-06-26 11:04
Redis
Redis源码剖析
Redis源码
剖析(四)过期键的删除策略
Redis是支持时间事件的,所谓时间事件,是为某个键值对设置过期时间,时间一到,Redis会自动删除该键值对。例如使用SET命令添加字符串类型的键值对127.0.0.1:6379>SETblogredisex10//添加键值对,10秒后删除OK127.0.0.1:6379>GETblog//添加后马上查找,可以获取redis"redis"127.0.0.1:6379>GETblog//上趟厕所回来
一个程序渣渣的小后院
·
2020-06-26 11:04
Redis
Redis源码剖析
Redis源码
剖析(二)io多路复用函数及事件驱动流程
作为服务器监听客户端请求的方法,io多路复用起到了不可忽略的作用,利用io复用监听的方法叫Reactor模式,在前一篇也提到过,使用io复用是现在常用的提高并发性的方法,而且效果显著。通常io多路复用连同事件回调是一起出现的,在将文件描述符(套接字)注册到io多路复用函数中时,同时也需要保存当这个文件描述符被激活时调用的函数(称作回调函数),这样,使用者无需考虑何时事件被激活又何时调用相应处理函数
一个程序渣渣的小后院
·
2020-06-26 11:04
Redis
Redis源码剖析
[
redis源码
注释]-简述
[
redis源码
注释]-简述second60201805101站在巨人的肩膀上有些人会问:学习一门技术最快的方法是什么?答案很简单:就是站在巨人的肩膀上,多看多多抄多练。
second60
·
2020-06-26 08:31
REDIS
redis
源码
注释
简介
【Redis】redis-3.0.0安装以及集群的搭建
需进入
redis源码
目录)第四步:ma
遥寄三山
·
2020-06-26 07:27
●数据库
linux服务器上搭建单机的redis 跟搭建不带密码redis集群 以及带密码的redis集群
进入
redis源码
目录。make第四步:安装。makeinstallPRE
爱弹吉他的程序员--小孟
·
2020-06-26 00:02
Redis源码
分析之sds
1.SDS简介Redis没有直接使用C语言传统的字符串而是自己创建了一种名为简单动态字符串SDS(simpledynamicstring)的抽象类型,并将SDS用作Redis的默认字符串表示。在Redis里面,C字符串只会作为字符串字面量(stringliteral)用在一些无须对字符串值进行修改的地方,比如打印日志。当Redis需要的不仅仅是一个字符串字面量,而是一个字符串值时,Redis就会使
the cool grass
·
2020-06-25 23:23
Redis设计与实现
Redis源码分析
Redis源码
剖析--简单动态字符串sds
Redis没有直接使用C语言传统的字符串表示,而是自己构建了一种名为简单动态字符串(simpledynamicstring,SDS)的抽象类型,并将SDS用作Redis的默认字符串表示。Redis中所有的键都是用sds格式来保存的,包括一部分值的保存,也是用的sds格式。SDS的定义sds.h中的定义如下:/**类型别名,用于指向sdshdr的buf属性*/typedefchar*sds;sds包
harleyliu
·
2020-06-25 16:03
redis
源码
golang中使用redis
golang中比较好用的第三方开源redisclient有:go-
redis源码
地址:https://github.com/go-redis/redis文档地址:http://godoc.org/github.com
yandaren
·
2020-06-25 05:36
Redis源码
学习简记(十 一)t_set与t_zset原理与个人理解
这次把两个set放在一起来说吧。经过前面的hash与list的分析,这两个的实现感觉其实比前面的要简单一些的。首先来说一下这个t_set吧。这个set的实现主要是由intset与dict两种编码模式实现的。其中intset只能存储整型,而且是有序存储的。而dict就是前面熟知的字典实现的hash。来看看一些set的基本实现吧。从其创建可以看到,如上所说的也就两种编码模式。/*Factorymeth
A_Linux_Coder
·
2020-06-25 04:50
Reids源码学习
Redis源码
剖析和注释(二)--- 简单动态字符串
https://blog.csdn.net/men_wen/article/details/69396550Redis简单动态字符串1.介绍Redis兼容传统的C语言字符串类型,但没有直接使用C语言的传统的字符串(以’\0’结尾的字符数组)表示,而是自己构建了一种名为简单动态字符串(simpledynamicstring,SDS)的对象。简单动态字符串在Redis数据库中应用很广泛,例如:键值对在
qq_26249609
·
2020-06-25 02:36
REDIS
redis源码
之压缩列表ziplist
未完待续…压缩列表ziplist1.简介连续,无序的数据结构。压缩列表是Redis为了节约内存而开发的,由一系列特殊编码的连续内存块组成的顺序型(sequential)数据结构。2.组成属性类型长度用途zlbytesuint_32t4B记录整个压缩列表占用的内存字节数:在对压缩列表进行内存重分配,或者计算zlend的位置时使用zltailuint_32t4B记录压缩列表表尾节点距离压缩列表的起始地
幻世111
·
2020-06-24 21:50
redis
redis源码
之数据库
未完待续。。数据库1.服务器中的数据库Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结构的db数组中,db数组的每个项都是一个redis.h/redisDb结构,每个redisDb结构代表一个数据库。/**服务器状态*/structredisServer{...//一个数组,保存着服务器中的所有数据库,指向redisDb结构,每个redisDb结构代表一个数据
幻世111
·
2020-06-24 21:50
redis
Redis源码
剖析和注释(二十六)--- Redis 集群伸缩原理源码剖析
RedisCluster集群伸缩原理源码剖析1.Redis集群伸缩教程Redis提供了灵活的节点扩容和收缩方案。在不影响集群对外服务的情况下,可以为集群添加节点进行扩容也可以对下线节点进行缩容。如何进行RedisCluster的伸缩,请参考RedisCluster集群扩容与收缩本篇教程。本文详细分别使用手动命令和redis-trib.rb工具来执行Redis集群的扩容和收缩操作。本篇文章根据Red
men_wen
·
2020-06-24 14:45
Redis
Redis
3.2.8
源码剖析注释
Redis源码
剖析和注释(二)--- 简单动态字符串
Redis简单动态字符串1.介绍Redis兼容传统的C语言字符串类型,但没有直接使用C语言的传统的字符串(以’\0’结尾的字符数组)表示,而是自己构建了一种名为简单动态字符串(simpledynamicstring,SDS)的对象。简单动态字符串在Redis数据库中应用很广泛,例如:键值对在底层就是由SDS实现的。在redis种,有一种数据类型叫string类型,而string类型简单的说就是SD
men_wen
·
2020-06-24 14:45
Redis
数据结构与算法
Redis
3.2.8
源码剖析注释
一个30k的工作,居然还要问我
Redis源码
,阿里的师兄给了我这份笔记
从三月初开始就一直在准备面试,先后去了美团,滴滴,拼多多,最后还是通过内推拿到了阿里的offer,在这么多次面试里,我真的是被Redis弄得无可奈何,无论大小公司,职位高低,都逃不过,最后还是阿里的一位师兄了我一份笔记,到现在他都还在用。之后我总结了一下这几次面试,面试官喜欢问的问题,结合这份学习笔记终于是吃透了总结了11道Redis系列的高频面试题:Redis持久化机制缓存雪崩、缓存穿透、缓存预
Java架构狮狮
·
2020-06-24 12:07
Java架构
Mybatis
Redis基础知识----SDS(简单动态字符串)
以下的总结,基于
redis源码
4.0.9版本1、redis的底层存储数据结构简单动态字符串(SDS)、链表、字典、跳跃表、整树集合、压缩列表等2、redis的数据结构对象字符串、列表、哈希、集合、有序集合等简单动态字符串
Zephyr_7
·
2020-06-24 06:20
redis
底层数据结构
Redis源码
阅读1:SDS(Simple Dynamic String)
1、结构体structsdshdr{//buf中已占用空间的长度intlen;//buf中剩余可用空间的长度intfree;//数据空间charbuf[];};2、怎么理解“structsdshdr*sh=(void*)(s-(sizeof(structsdshdr)));”?源码中经常出现这句话:structsdshdr*sh=(void*)(s-(sizeof(structsdshdr)));
lishichengyan
·
2020-06-24 06:05
Redis
2020年后台开发程序员应该学习的8大技术
一、源码分析包含:Nginx源码、
Redis源码
、ZeroMQ源码无论基于什么样的原因,放弃阅读源码始终不是一个明智的选择,因为你失去了一个跟大师学习的机会。
lingshengxueyuan
·
2020-06-24 05:08
1000道程序员常见问题解析
scrapy-redis案例集合
有缘网分布式爬虫案例:#clonegithubscrapy-
redis源码
文件gitclonehttps://github.com/rolando/scrapy-redis.git#直接拿官方的项目范例
莲动下渔舟
·
2020-06-24 04:45
python
上一页
12
13
14
15
16
17
18
19
下一页
按字母分类:
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
其他