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 源码阅读 ——— 网络模块
Redis源码
阅读———网络模块概述redis是cs架构,网络采用epoll模型,单线程处理每个请求。
上海大坤哥
·
2023-02-01 05:19
redis-info命令详解
Server服务器基本信息#redis版本号redis_version:5.0.3#
redis源码
包git信息redis_git_sha1:00000000redis_git_dirty:0redis_build_id
依弗布德甘
·
2023-01-30 02:52
redis的使用(Linux)
进入
redis源码
目录。make第四步:安装。makeinstallPREFIX=/usr/local/redisPREFIX参数指定redi
a86e8e27fc21
·
2023-01-28 05:21
Redis对象及其实现
源码分析顺序按照黄健宏的这篇博客如何阅读
Redis源码
redis版本选择最新的稳定版5.0.7github参考书籍:1、《Redis设计与实现》黄健宏2、官方文档Documentation第一步,学习Redis
懵懂时光很美好
·
2023-01-27 17:24
Linux环境部署Redis服务踩过的坑
系列文章目录Redis部署1、Redis的官方下载网址是:http://redis.io/download(这里下载的是Linux版的
Redis源码
包)将Redis的源码包由windows上传到Linux
HuaWei&&WeiHua
·
2023-01-21 20:15
Linux部署
redis
java
linux
服务器
Redis源码
剖析与实战 学习笔记 Day3 如何实现一个性能优异的Hash表?
哈希表是一种非常关键的数据结构,在计算机系统中发挥着重要作用。它的底层是数组+链表,通过哈希计算,能以O(1)的复杂度快速根据key查询到数据。(1)数据结构-哈希表假设让我们自己实现一个哈希表,我们要考虑哪些方面?哈希表提供的功能哈希表操作的时间复杂度为O(1)哈希表的容量与扩容(1.1)提供的功能新建哈希表、新增数据、修改数据、删除数据、查询数据(1.2)时间复杂度O(1)要想使时间复杂度为O
·
2023-01-18 21:38
redis
Redis源码
剖析与实战 学习笔记 Day2 键值对中字符串的实现,用char还是结构体?
Redis绝大部分操作都会涉及到key,使用特别广泛,所以需要尽量满足以下三个要求:能支持丰富且高效的字符串操作,比如字符串追加、拷贝、比较、获取长度等;能保存二进制数据,比如byte[]等;节省内存开销。从系统设计的角度来看,我们该如何设计实现字符串呢?Redis设计了简单动态字符串(SimpleDynamicString)的结构,用来表示字符串。相比于C语言中的字符串实现,SDS这种字符串的实
·
2023-01-17 21:15
redis
Redis源码
剖析与实战 学习笔记 Day1
Redis源码
整体概览
Redis代码的整体架构,就相当于给Redis代码画了张全景图。有了这张图,我们再去学习Redis不同功能模块的设计与实现时,就可以从图上快速查找和定位这些功能模块对应的代码文件。庖丁解牛代码的目录结构和作用划分理解Redis代码的整体架构,以及所包含的代码功能类别;系统功能模块与对应代码文件目的是了解Redis实例提供的各项功能及其相应的实现文件,以便后续深入学习。(1)Redis目录结构在学习
·
2023-01-16 20:05
redis
Redis源码
,主从同步与对象模型
文章目录一、持久化与持久化选择redis持久化redis持久化相关配置aofaofrewriterdb混合持久化数据安全策略二、Redis主从复制数据同步增量数据同步服务器RUNID复制偏移量offset三、redis哨兵模式分布式中的cap原则Codis集群四、Rediscluster集群集群配置一、持久化与持久化选择redis持久化redis的数据全部在内存中,如果突然宕机,数据就会全部丢失,
猥琐猿
·
2023-01-10 21:06
笔记
redis
Linux系统之源码编译部署Redis数据库
数据库介绍1.Redis简介2.Redis特点二、检查本地系统版本三、下载Redis软件包1.下载软件2.查看redis安装包四、安装redis前环境准备工作1.解压redis压缩包2.安装gcc模块五、编译
redis
江湖有缘
·
2022-12-31 13:04
Redis
数据库
redis
linux
使用proxy_pool来为爬虫程序自动更换代理IP
文章目录1.前言2.教程3.官网4.在线demo4.1.本地部署4.2.安装4.2.1.Python源码构建安装4.2.1.1.安装redis数据库4.2.1.1.1.下载
redis源码
4.2.1.1.2
我真的爱发明
·
2022-12-27 12:46
python
自动化
电脑骚操作
爬虫
tcp/ip
python
Linux系统搭建redis-cluster集群案例
Linux系统搭建redis-cluster集群案例(一)redis下载及安装【1】前言介绍【2】redis下载以及安装(1)首先要进入Linux系统的根目录(2)安装redis所需的环境(3)下载
redis
孫治AllenSun
·
2022-12-17 20:40
框架和中间件
redis
linux
数据库
Redis源码
解读(一)——总体架构
刚开始阅读Redis代码的时候,经常感到效率不高,难以把握整体,现在回想起来主要有以下几个原因:Redis为了追求极致的内存使用和效率,很多数据结构从0开始实现,个别结构比较复杂,导致很容易陷入细节之中。Redis中功能模块很多,某些模块比较复杂,而且往往夹杂着其他模块,如果不清楚模块之间的联系,就很难找到一条清晰的调用主线。Redis是纯C实现,很难达到C++那样的封装性和抽象性,导致一些复杂函
fayadexinqing
·
2022-12-04 23:47
redis
redis
架构
数据库
c语言
缓存
redis源码
阅读-zset
前段时间给小伙伴分享redis,顺带又把redis撸了一遍了,对其源码,又有了比较深入的了解。(ps:分享的文章再丰富下再放出来)。数据结构我们先看下redis5.0的代码。本次讲解主要是zset中的跳表。压缩列表不做讲解/***跳跃表节点*/typedefstructzskiplistNode{//member对象sdsele;//权重分值doublescore;//后退指针structzski
5ycode
·
2022-12-04 23:32
redis源码分析
redis
redis
数据库
缓存
zset
跳跃表
【
Redis源码
】Redis 6.0 字典扩容与渐进式 Rehash 源码分析
Redis6.0字典扩容与渐进式Rehash源码分析如果觉得对你有帮助,能否点个赞或关个注,以示鼓励笔者呢?!博客目录|先点这里前提概念源码地址字典数据结构结构设计字典类型为什么字典有两个哈希表?哈希算法扩容机制扩容前置知识字典存在几种状态?扩容状态码,扩容安全阀值,扩容初始大小容量是2的幂次方扩容机制字典什么时候会扩容?扩容的阀值&扩容的倍数哪些方法会导致触发扩容?触发扩容后,会怎么扩容?渐进式
SnailMann
·
2022-12-04 23:29
Redis
Redis
Redis扩容
Redis源码
渐进式Rehash
redis源码
解析(七):对象
引言redis每一个键,都是一个redisObject对象,对象里面存放特定的数据结构用来保存值。之前讲过redis内部有五种数据结构:sds字符串、双向链表、字典、压缩列表、整数集合,跳跃表等redis的对象系统使用这五个数据结构构建了五种对象分别是:字符串对象、列表对象、哈希表对象、集合对象以及有序集合对象。redisObject对象的数据结构typedefstructredisObject{
Mr . 孤独患者
·
2022-11-26 02:24
redis
缓存
数据库
Redis源码
学习(二)-网络通信(anet.c)
有了上个博客(网络编程addrinfo结构体与getaddrinfo函数_qq_20853741的博客-CSDN博客)的铺垫,理解Redis网络通信源码就简单多了!anet.c是redis对网络通信(socket)的简单封装和一些状态设置的封装。状态设置主要包括socket连接的阻塞性、tcp的保活定时器的设置、设置发送缓冲区、tcp的Nagle算法设置、设置发送超时时间、地址重用的设置和设置一、
qq_20853741
·
2022-11-23 19:23
网络编程
多线程
c++
开发语言
redis源码
分析[04]-网络通信-anet.c
//设置错误信息staticvoidanetSetError(char*err,constchar*fmt,...){va_listap;if(!err)return;va_start(ap,fmt);vsnprintf(err,ANET_ERR_LEN,fmt,ap);va_end(ap);}//设置一个socket的阻塞状态1非阻塞0阻塞intanetSetBlock(char*err,int
命中无时必强求
·
2022-11-23 19:53
redis源码分析
linux服务器中搭建redis6.0.7集群
目录一、安装
redis源码
安装:二、编译安装三、启动Redis四、配置主从五、redis-sentinel---哨兵模式六、rediscluster集群搭建环境准备安装redis并配置redis-cluster
·
2022-11-09 15:44
我的项目天天用Redis,可是出去面试连缓存架构是什么都没听过!
===1、一步一图带你剖析Redis核心源码2、数据类型、数据库、客户端和服务端源码剖析3、Redis5.0源码中优秀的架构设计===课程内容===(*以下仅为部分课程内容展示,详细大纲查看文章末尾)
Redis
石杉的架构笔记
·
2022-11-07 11:04
内核
java
redis
面试
缓存
新书介绍 -- 《Redis核心原理与实践》
《Redis核心原理与实践》这本书深入地分析了Redis常用特性的内部机制与实现方式,大部分内容源自对
Redis源码
的分析,并从中总结出实现原理。
binecy
·
2022-10-06 07:17
Redis核心原理与实践
redis
【Redis 系列】redis 学习十五,redis sds数据结构和底层设计原理
我们可以看到
redis源码
中的sds库函数,和sds的具体实现,分别有如下2个文件:sds.hsds.c具体路径是:deps/hiredis/sds.h,deps/hiredis/sds.csds.h中涉及如下数据结构
阿兵云原生
·
2022-10-06 07:47
开源组件
redis
数据结构
学习
Redis源码
设计剖析之事件处理示例详解
目录1.Redis事件介绍2.事件的抽象2.1文件事件结构2.2时间事件结构2.3事件状态结构3.事件的实现1.Redis事件介绍Redis服务器是一个事件驱动程序,所谓事件驱动就是输入一条命令并且按下回车,然后消息被组装成Redis协议的格式发送给Redis服务器,这个时候就会产生一个事件,Redis服务器会接收改命令,处理该命令和发送回复,而当我们没有与服务器进行交互时,服务器就会处于阻塞等待
·
2022-09-20 21:53
Redis源码
与设计剖析之网络连接库
目录Redis网络连接库分析1.Redis网络连接库介绍2.客户端的创建与释放2.1客户端的创建2.2客户端的释放3.命令接收与命令回复3.1命令接收3.2命令回复4.CLIENT命令的实现Redis网络连接库分析1.Redis网络连接库介绍Redis网络连接库对应的文件是networking.c,这个文件主要负责:客户端的创建与释放.命令接收与命令回复.Redis通信协议分析.CLIENT命令的
·
2022-09-20 21:52
17 Redis 的性能受CPU结构影响
CPU架构二、多CPUSocket的架构二、CPU多核对Redis性能的影响三、CPU的NUMA架构对Redis性能的影响四、绑核的风险和解决方案方案一:一个Redis实例对应绑一个物理核方案二:优化
Redis
海陆云
·
2022-09-13 19:22
Redis
redis
缓存
数据库
做一名有经验的开发人员(一)大半夜 Redis 内存暴涨怎么办?
以本文相关的Redis为例,集群、Replication,数据结构网上的学习资料很多,有的甚至还从
Redis源码
的角度进行分析,但是真的当出现了线上问题的时候该如何处理呢,这时候经验和思维方式就很重要了
Dongguabai
·
2022-09-12 10:57
redis
数据库
java
redis之redis集群、持久化至mysql、与mysql数据同步
在
redis源码
包里有一个脚本可以自动帮我们创建集群:可以看README查看怎么创建集群:start开启六个实例:create创建集群,三个master,三个slave:-c指定集群模式,-p指定端口:
cjzcc1998
·
2022-08-22 22:37
大数据
redis
缓存
Redis 非关系型数据库学习(一) ---- Redis 的安装
学习(一)----Redis的安装Window安装1、github下载zip2、下载好的压缩包3、开启redis服务,客户端测试是否连通4、redis简单操作Linux安装(1)环境安装gcc(2)安装
redis
RAIN 7
·
2022-08-17 09:31
Redis非关系型数据库学习
redis
nosql
学习
透过
Redis源码
探究Hash表的实现
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/667本文使用的Redis5.0源码概述我们在学习Redis的Hash表的时候难免脑子里会想起其他Hash表的实现,然后进行一番对比。通常我们如果要设
luozhiyun
·
2022-07-21 22:00
Redis源码
与设计剖析 -- 7.快速列表
Redis快速列表文章目录Redis快速列表1.介绍2.quicklist实现2.1quicklist表头结构2.2quicklist节点结构2.3被压缩过的ziplist2.4quicklistEntry3.常用操作3.1插入1.介绍之前我们介绍了链表结构和压缩列表结构,它们是列表键的底层实现方式,但是链表的附加空间有点高,因为prev和next指针会占掉一部分的空间(64位系统占用8+8=16
JunesFour
·
2022-07-19 13:08
redis
redis
Redis源码
分析
前言前言宏观梳理启动过程网络层协议层业务层在保存到dict的过程中,数据的形态也一直在变化定义新的数据类型小结参考《ApacheKafka源码分析》——server服务端网络开发的基本套路宏观梳理整个轴线是redisServer初始化并启动eventloop,eventLoop创建redisClient及驱动processCommand方法进而执行redisCommand向dict中保存数据本文以
Linux服务器开发
·
2022-07-16 07:13
Linux服务器开发
后端开发
redis
redis
redis源码
中间件
后端开发
Linux服务器开发
后端底层开发人员必须要彻底搞懂的redis存储原理丨redis跳表与B+树详细对比
后端底层开发人员必须要彻底搞懂的redis存储原理1.redis存储原理分析2.
redis源码
学习分享3.redis跳表与B+树详细对比分析视频讲解如下,点击观看:后端底层开发人员必须要彻底搞懂的redis
Linux服务器开发
·
2022-07-16 07:13
Linux服务器开发
后端开发
redis
redis
redis储存原理
后端开发
Linux服务器开发
redis源码
redis单机、主从、哨兵、集群部署
本文重点讲述如何升级redis架构的部署,采用云服务器进行模拟,使用
redis源码
包进行安装,redis4.0单机修改redis.conf文件bind0.0.0.0#设置任意ip访问requirepasspwd
随心所欲.
·
2022-07-06 11:17
工具
redis
服务器
数据库
透过
Redis源码
探究字符串的实现
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com本文使用的Redis5.0源码概述最近在通过Redis学C语言,不得不说,Redis的代码写的真的工整。这篇文章会比较全面的深入的讲解了Redis数据结构字符串的源码实现,希
luozhiyun
·
2022-06-18 12:00
瑞芯微RV1126/1109开发流程之redis交叉编译
1.下载
redis源码
下载json源码地址Releases·redis/redis·GitHub本次安装下载json版本为redis-5.0.10.tar.gz2.解压下载下来后解压tar-zxvfredis
xidaoliang123
·
2022-06-14 10:42
瑞芯微RV1126
linux
ubuntu
gnu
Redis内部数据结构详解(1)——dict
首页>服务器架构>栏目20192019-02-07»
Redis源码
从哪里读起?
mhHao
·
2022-06-08 06:47
redis
Redis源码
学习简记(八)quicklist原理与个人理解
在看t_list的时候发现,少研究了一个数据结构。还是先把这个快链分析一下,再看后面的东西。quicklist是3.2版本新增加的,所以看着网上博客学习很容易会忽略掉。#defineOBJ_ENCODING_LINKEDLIST4/*Nolongerused:oldlistencoding.*/旧版本的linkedlist基本上是被淘汰掉了,而是使用的为quicklist来代替。那么这种数据结构,
A_Linux_Coder
·
2022-06-05 07:28
Reids源码学习
Redis源码
解读——跳跃表
Redis中的跳跃表结构每个节点都有各自的分层,前进节点,后退节点,键以及分值。后退节点即用来从跳跃表尾部从后向前遍历。前进节点有两部分:前进指针,以及前进的步长。这个步长可以用来计算排位,比如在查找某个节点过程中,将中间的跨度加起来,就可以得到它在跳跃表中的排位。跳跃表节点定义:typedefstructzskiplistNode{sdsele;doublescore;structzskipli
·
2022-05-29 10:30
credis
Redis源码
解读——字典
[toc]四个数据结构dictEntrydictEntry的结构如下(Redis7.0):typedefstructdictEntry{void*key;//键union{void*val;uint64_tu64;int64_ts64;doubled;}v;//值structdictEntry*next;/*Nextentryinthesamehashbucket.即下一个节点*/void*met
·
2022-05-16 12:02
credis
【
Redis源码
分析】一个对SDSHDR5是否使用的疑问
熊浩含问题提出1、在
Redis源码
中有一句注释,是对sdshdr5的解释:/*Note:sdshdr5isneverused,wejustaccesstheflagsbytedirectly.
·
2022-05-12 09:56
redis
Redis源码
漂流记(二)-搭建Redis调试环境
Redis源码
漂流记(二)-搭建Redis调试环境一、目标搭建Redis调试环境简要理解Redis命令运转流程二、前提1、有一些c知识简单基础(变量命名、常用数据类型、指针等)可以参考这篇简单入门C语言入门教程
从此启程
·
2022-05-07 22:00
【Redis 系列】redis 学习十五,redis sds数据结构和底层设计原理
我们可以看到
redis源码
中的sds库函数,和sds的具体实现,分别有如下2个文件:sds.hsds.c具体路径是:deps/hiredis/sds.h,deps/hiredis/sds.csds.h中涉及如下数据结构
·
2022-05-06 21:29
redis
redis基于docker集群的搭建
节点镜像配置集群集群操作说明启动镜像节点配置配置槽点主从高可用高可用测试读写测试测试连接不上的问题说明Redis集群原理可参考以下资料,原理其实相对比较好理解三张图秒懂Redis集群设计原理redis集群原理准备工作安装Docker下载
redis
迷雾总会解
·
2022-04-11 15:41
数据库(SQL和NOSQL)
服务器
redis
docker
基于docker搭建redis集群
准备工作下载
redis源码
包:mkdir/usr/local/redis_dockercd/usr/local/redis_dockerwgethttp://download.redis.io/releases
RB_VER
·
2022-04-11 15:39
redis
docker
redis
Redis源码
分析之set 和 sorted set 使用
目录set和sortedset前言set常见命令set的使用场景看下源码实现sortedset常见的命令使用场景分析下源码实现总结参考set和sortedset前言前面在几个文章聊到了list,string,hash等结构的实现,这次来聊一下set和sortedset的细节。setRedis的Set是String类型的无序集合,集合成员是唯一的。底层实现主要用到了两种数据结构hashtable和i
·
2022-03-22 12:46
C语言也有封装,继承和多态你知道吗
那么我们看看
Redis源码
中对
·
2022-03-22 10:32
Redis源码
解析:Redis事务能保证ACID吗?
Redis事务命令作用MULTI开启事务EXEC提交事务DISCARD回滚事务WATCH检测键值在事务执行期间是否发生变化,如果发生变化,放弃当前事务执行原子性EXEC命令执行前报错执行EXEC命令前,操作命令有错误,Redis会报错,并记录下这个错误,我们还能继续提交命令,当执行EXEC命令时,拒绝所有命令的执行,返回事务失败,保证了原子性EXEC命令执行后报错EXEC命令执行后报错(例如事务操
Java识堂
·
2022-02-23 11:41
Redis
redis
缓存
数据库
Redis源码
解析:Redis真的是单线程吗?
介绍后台任务类型解释BIO_CLOSE_FILE文件关闭后台任务BIO_AOF_FSYNC:AOF写AOF日志后台任务BIO_LAZY_FREE惰性删除后台任务参考博客
Java识堂
·
2022-02-23 11:11
redis
缓存
nosql
Redis源码
解析:事件驱动框架
介绍为了高效的处理网络请求,演化出了Reactor模型。Reactor模型主要有reactor,acceptor,handler三种角色reactor:分配事件acceptor:建立连接handler:处理请求单Reactor单线程accept->read->处理业务逻辑->write在一个线程单Reactor多线程accept,read,write复用一个线程处理请求用一个工作线程池主从Reac
Java识堂
·
2022-02-23 11:11
Redis
redis
网络
缓存
Redis源码
解析:一个命令的执行过程
通信协议Redis客户端和服务端之间使用一种名为RESP(REdisSerializationProtocol)的协议进行通信。RESP设计的十分精巧,下面是一张完备的协议描述图:各种命令执行server.c参考博客协议[1]https://www.jianshu.com/p/f670dfc9409b[2]https://zhuanlan.zhihu.com/p/345327284
Java识堂
·
2022-02-23 11:10
Redis
redis
数据库
database
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他