一、特殊编码:  
   自从Redis 2.2之后,很多数据类型都可以通过特殊编码的方式来进行存储空间的优化。其中,Hash、List和由Integer组成的Sets都可以通过该方式来优化存储结构,以便占用更少的空间,在有些情况下,可以省去9/10的空间。 
   
   这些特殊编码对于Redis的使用而言是完全透明的,事实上,它只是CPU和内存之间的一个交易而言。如果内存使用率方面高一些,            
                
         
            
            
            
            一,redis内存管理介绍 redis是一个基于内存的key-value的数据库,其内存管理是很重要的,为了屏蔽不同平台之间的差异,以及统计内存占用量等,redis对内存分配函数进行了一层封装,程序中统一使用zmalloc,zfree一系列函数,其相应的源代码在src/zmalloc.h和src/z...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2014-07-29 09:39:00
                            
                                179阅读
                            
                                                                             
                 
                
                             
         
            
            
            
                                                                    &nbs            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-09 21:16:31
                            
                                121阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            以下内容默认以redis 2.8版本源码作为基础这篇Redis系列分三个部分对源码进行分析 · 基本数据类型 · 数据对象 · 事件驱动除此之外还有很多优秀的模块,只要掌握了以上三个模块,基本就可以靠自己去阅读Redis源码了。Redis的全部内容,可以分为几个部分· 基本数据结构· 数据对象· 核心逻辑-事件循环/事件驱动· 磁盘文件系统围绕核心的架构,Redis还可以区分出几个模块· 服务端/            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-11 23:22:08
                            
                                10000+阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言我们都知道 Redis 是使用内存来进行数据的存储,这也是为什么 Redis 的访问速度要远远快于 MySQL 的主要原因,因为是使用内存存储数据,可以避免频繁的进行写盘操作,大大降低响应时间,我们仅仅知道因为它是基于内存实现的,对于其它原因为什么快是一概不知。接下来就以为什么 Redis 会这么快的原因分成几部分来讲解。基于内存实现这点在上面就已经说过了,这里在简单说一下。Redis 是基于            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-08 22:10:20
                            
                                60阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            这次研究了一下intset。研究的过程中,一度看不下过去,可是还是咬牙挺过来了。看懂了也就是那么回事。静下心来,切莫浮躁 Redis为了追求高效,在存储下做了非常多的优化,像intset就是作者为了节约内存定制的数据结构,包含后面将要阅读的压缩列表。 intset是一个有序的整数集,提供了添加,删除            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2016-03-11 13:16:00
                            
                                191阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
              经过将近半个月的学习,终于将五种数据类型的源代码都学习了一遍,虽然不是全部阅读,但是大部分的代码都已经学习到了,趁五一假期好好整理和总结一下近期我们学习的内容。1 数据类型介绍  在Redis中有五种数据类型,分别是字符串、列表、集合、有序集合、哈希,在源代码 redis.h 头文件中,有对应他们的常量定义,每次判断对象类型的时候会使用到这几个常量。/* Object types */
#de            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-29 16:13:40
                            
                                102阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            这篇文档是关于Redis内部实现的概述,它提供了对Redis源代码结构、重要函数和结构的高层次理解。文档的目的是在不深入细节的情况下,给读者一个Redis服务器内部如何工作的大致概念。以下是对文档内容的解读:Redis源代码布局根目录:包含README文件、Makefile(用于构建Redis)、示例配置文件以及一些用于执行单元测试的shell脚本。重要目录src:Redis用C语言实现的核心代码            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-05-06 09:45:42
                            
                                41阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            文章目录前言一、数据库概念简介1.数据库定义2.数据库切换3.数据库键空间4.过期时间设置5.过期删除策略6.数据库通知二、数据库相关API1.数据库通知函数2.过期检查函数3.切换目标数据库函数4.设置过期时间函数5.查找key对应值函数总结 前言本文对Redis的数据库文件进行简要介绍,包括数据库的选择,键的新建更新删除、Redis过期策略以及事件通知等。一、数据库概念简介1.数据库定义Re            
                
         
            
            
            
            最近一直在看Python方面的知识,包括数据分析中常用的numpy、pandas、scipy等模块;数据库API接口,如常见的pymysql、pymssql等模块;爬虫方面所需要的urllib、bs4等模块;还有正则表达式re模块。在之前的几期中我们已经详细介绍了numpy、pandas和pymysql、pymssql模块的应用,具体可参见下文:今天我们就来讲讲有关爬虫的一点点知识和应用,文章内容            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-14 08:41:08
                            
                                82阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # 基于JAVA的订餐系统源代码
订餐系统是一种常见的应用软件,用于方便用户在线订购各种美食。基于JAVA的订餐系统源代码可以帮助开发者快速构建一个功能完善的订餐平台。在这篇文章中,我们将介绍一些关键的JAVA代码示例,用于实现一个简单的订餐系统。
## 用户类的定义
首先,我们需要定义一个用户类,用于存储用户的信息。以下是一个简单的用户类的JAVA代码示例:
```java
public            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-25 04:54:41
                            
                                253阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            看到一个博客写了对源码的解析,写的很简洁全面,估计再写也不可能比他写的好了,不过还是简单写下源码的解析及阅读后的感受吧。代码主要部分为输入处理,网络搭建及loss处理。最难的地方是各种reshape,如果不注意很容易就乱了,这个一定要理清上一篇笔记简单介绍了Faster-RCNN,这篇主要介绍下其tensorflow源码阅读笔记。下载后工程如下,主要程序都存储在lib这个文件夹里面。接下来诸葛介绍            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-09 10:42:30
                            
                                20阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Redis 源码阅读篇可以到官网https://redis.io/download去下载最新版源码一、Redis源码目录结构首先,我们来了解下 Redis 的目录结构。 为什么要从目录结构开始了解呢?其实,这是我自己阅读代码的一个小诀窍:在学习一个 大型系统软件的代码时,要想快速地对代码有个初步认知,了解系统源码的整体目录结构就是一个行之有效的方法。这是因为,系统开发者通常会把完成同一或相近功能的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-25 13:29:52
                            
                                97阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                    当我第一次阅读了这个文件的源代码的时候。我笑了,忽然想起前几周阿里电话二面的时候,问到了自己定义内存管理函数并处理8字节对齐问题。
当时无言以对,在面试官无数次的提示下才答了出来,结果显而易见,挂掉了二面。而这份源代码中函数zmalloc()和zfree()的设计思路和实现原理,正是面试官想要的答案。
源代码结构
zmalloc.c文件的内容例如以下:
主要函数
zmalloc            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2015-12-24 18:24:00
                            
                                48阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            简单动态字符串(SDS)简单动态字符串(Simple Dynamic Strings),是 Redis 的基本数据结构之一,用于存储字符串和整型数据。相关代码文件github 地址 https://github.com/antirez/redis/tree/5.0/src 里:文件说明sds.hsds 数据结构声明sds.csds 数据结构实现sdsalloc.hsds 内存分配 api 。使用            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-07 10:09:50
                            
                                63阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            形象化设计模式实战             HELLO!架构 在redis的使用中,set/get无疑是使用最普遍的命令,我先telnet连接运行看看 先看get命令,获取一个key服务器返回了两行内容,是"$3\r\n123\r\n"(\r\n为换行符),不难发现3就是“123”的长度,redis的官方文档            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-09 22:49:38
                            
                                53阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            找工作那会儿,看了黄建宏老师的《Redis设计与实现》,对redis的部分实现有了一个简明的认识。在面试过程中,redis确实成为了面试官考核我的一个亮点,恰好以后的工作又与redis有着千丝万缕的联系,于是就想趁着毕业前的这段时间把redis的源代码研究一下,为以后的工作打个良好的基础。 Redis简介redis全称REmote DIctionary Server,是一个由Salvatore S            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-19 00:28:25
                            
                                67阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Redis 里面小于等于44个字节的字符串是embstr编码、大于44个字节是raw编码            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-18 12:51:11
                            
                                65阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            redis是一个开源的底层第用ANSI C语言编写的key-value型存储数据库,可用于缓存,事件发布订阅,高速队列等场景redis支持数据类型redis支持丰富的数据类型,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-18 13:15:38
                            
                                69阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             摘要: Redis 和 Memcache 都是基于内存的数据存储系统。Memcached是高性能分布式内存缓存服务;Redis是一个开源的key-value存储系统。与Memcached类似,Redis将大部分数据存储在内存中,支持的数据类型包括:字符串、哈希 表、链表、等数据类型的相关操作。下面我们来进... Redis 和 Memcache 都是基于内存的数据存储系统。M            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-17 05:07:03
                            
                                21阅读
                            
                                                                             
                 
                
                                
                    