何谓索引如《存储(一)—— 序言》中所说,找出自己想要的东西并不难,难的是从大量自己不想要的信息中飞快的找出自己想要的东西。 缓存已经帮我们把数据从更远更慢的介质提前移动到了更近更快的介质上,即便如此,从百万、千万、上亿条的数据中找出我们想要的那条数据,也并非易事。 好比查字典,不可能一页一页翻,所以,字典都是有目录的,这个目录,就是索引了。 道理都是一样的,Redis的目录是hash,MySQL            
                
         
            
            
            
            一、属性Buffer有四个基本属性:1、capacity  容量,buffer能够容纳的最大元素数目,在Buffer创建时设定并不能更改2、limit buffer中有效位置数目,不能对超过limit中的区域进行读写。3、position 下一个读或者写的位置4、mark  用于记忆的标志位,配合reset()使用,初始值未设定,调用mark后将当前position设为值四者关            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-01 20:37:29
                            
                                155阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            环形缓存区:       环形缓冲器(ringr buffer),也称作圆形队列(circular queue),循环缓冲区(cyclic buffer),圆形缓冲区(circula buffer),是一种用于表示一个固定尺寸、头尾相连的缓冲区的数据结构,适合缓存数据流。背景:     当有大量数据            
                
         
            
            
            
            文章目录前言1. 环形缓冲区工作机制1.1 实现原理1.2 区分缓冲区满或者空1) 总是保持一个存储单元为空2) 使用计数数据3) 镜像指示位2. Qt实现环形缓冲区2.1 QByteArray环形缓冲区2.2 QSemaphore实现环形缓冲区参考资料 前言环形缓冲区(Ring buffer/Circular buffer)或称环形队列,是一种用于表示一个固定尺寸、头尾相连的缓冲区的数据结构,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-05 10:49:58
                            
                                253阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、IPv4首部  IPv4数据报的最大大小是65535字节,包括IPv4首部二、IPv6首部  IPv6数据报的最大大小是65575字节,包括40字节的IPv6首部;IPv6的净荷长度字段不包括IPv6首部三、MTU  1)IPv4要求的最小链路MTU是68字节,这允许最大的IPv4首部(包括20字节的固定长度部分和最多40字节的选项部分)        拼接最小的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-20 13:56:22
                            
                                43阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            3.缓冲区大小及限制影响IP数据报大小的限制。1)IPv4数据报,最大大小是65535.2)硬件规定的MTU。以太网的MTU是1500字节、SLIP链路1006字节或296字节3)路径MTU。两个主机之间路径中最小的MTU。1500字节常见的路径MTU4)IP数据报>MTU,IPv4执行分片5)IPv4,DF位被设置(不分片)。路由器接收到一个超过其外出链路MTU大小且设置了DF位的IPv4            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-21 22:10:37
                            
                                111阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Buffer是一个抽象类,位于java.nio包中,主要用作缓冲区。注意:Buffer是非线程安全类。缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。NIO 有以下几种Buffer类型:ByteBufferMappedByteBufferCharBufferDoubleBufferFloatBuffer            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-06 21:54:27
                            
                                181阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1 #include <stdio.h>
  2 #include <string.h>
  3 #include <malloc.h>
  4 
  5 struct CircleBuf
  6 {
  7     char *pFirst;//指向循环表开始的位置
  8     char *pLast;//指向循环表结尾的位置
  9     char *            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-23 21:15:05
                            
                                34阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            整理了一下配置的文件的部分内容,如下/etc/sysctl.conf文件, 然后保存文件,使用命令“/sbin/sysctl –p”# 可以打开的文件个数 cat /proc/sys/fs/file-max
fs.file-max = 2000000
# 通用接收缓冲区大小 256KB
net.core.rmem_default = 256960
# 接收缓冲区最大至 512 KB
net.co            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-23 13:53:39
                            
                                167阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. tcp 收发缓冲区默认值   [root@ www.linuxidc.com]# cat /proc/sys/net/ipv4/tcp_rmem   4096    87380   4161536    87380  :tcp接收缓冲区的默认值    [root@ www.linuxidc.com]# cat /            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-07 16:41:39
                            
                                405阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、缓冲区基础  
 概念上,缓冲区就像一个基本数据元素数组。 
 1、 属性  
 所有的缓冲区都具有四个属性来提供关于其所包含的数据元素的信息。它们是:  
 2、容量(Capacity)  
 缓冲区能够容纳的数据元素的最大数量。这一容量在缓冲区创建时被设定,并且永远不能被改变。  
 3、上界(Li            
                
         
            
            
            
            # Java缓冲区大小
## 导言
在Java开发中,我们经常需要使用缓冲区来提高程序的性能和效率。缓冲区是一种临时存储数据的区域,用于临时存放需要处理的数据。缓冲区的大小对程序的性能有着重要的影响。本文将指导你如何在Java中设置缓冲区的大小。
## 步骤
下面是设置Java缓冲区大小的步骤的整体流程图:
```flow
st=>start: 开始
op=>operation: 创建缓            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-07 13:37:12
                            
                                167阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            NIO的特性:它以块为基本单位处理数据,所有的数据都要通过缓冲区(Buffer)来进行传输。它有一个用来作为原始I/O操作的抽象通道(Channel)并提供了Selector的异步网络接口。且支持将文件映射到内存,以大幅提高I/O效率。  缓冲区中有3个重要的参数:  position(位置):即缓冲区的位置,指缓冲区指针到哪个位置了。  capactiy(容量):缓冲区的总上限,如ByteBuf            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-10 06:48:53
                            
                                247阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             文章目录一、UDP协议格式二、UDP特点三、UDP校验和1.crc循环冗余校验2.MD5校验 一、UDP协议格式二、UDP特点1.无连接 知道对端的IP和端口号就开始传输,不需要建立链接2.不可靠 没有任何安全机制。发送端发送数据报之后,如果因为网络故障该段无法发送过去,UDP协议层也不会给应用层任何反馈信息。3.面向数据报 应用层给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并4.缓            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-04 01:07:00
                            
                                160阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            架构优化文章集合在解决java内存溢出问题之前,需要对jvm(java虚拟机)的内存管理有一定的认识。jvm管理的内存大致包括三种不同类型的内存区域:PermanentGeneration space(永久保存区域)、Heap space(堆区域)、JavaStacks(Java栈)。其中永久保存区域主要存放Class(类)和Meta的信息,Class第一次被Load的时候被放入PermGensp            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-21 15:19:06
                            
                                211阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            socket缓冲区 每个 socket 被创建后,都会分配两个缓冲区,输入缓冲区和输出缓冲区。 write()/send() 并不立即向网络中传输数据,而是先将数据写入缓冲区中,再由TCP协议将数据从缓冲区发送到目标机器。一旦将数据写入到缓冲区,函数就可以成功返回,不管它们有没有到达目标机器,也不管它们何时被发送到网络,这些都是TCP协议负责的事情。 TCP协议独立于 write()/send(            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-08 21:03:49
                            
                                52阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、缓冲区 每个socket被创建以后,都会分配两个缓冲区,输入缓冲区和输出缓冲区,默认大小都为8k,可以通过getsocket()获取,暂时存放传输数据,防止程序在发送数据的时候卡组,提高代码运行效率 首先看python的系统交互subprocessimport subprocess
sub_obj = subprocess.Popen(
    'dir',            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-10 20:35:05
                            
                                670阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            之前已经给大家讲了关于字符流和字节流的一些相关知识,并且输入和输出都做了一些简单的讲解和举例,而这篇文章主要是讲解一下关于字符流中缓冲区的相关知识点。其实在讲解输入流和输出流的时候我们就已经有定义一个缓冲区的变量,而且我们定义的是一个数组,而今天专门讲解的缓冲区其实就是把像单个字符、数组和字符串等封装成了一个对象,而这个对象要用于输入和输出我们就提供了另外两个类来体现,分别是BufferedWri            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-24 13:06:42
                            
                                38阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             有一个问题: 我搜索了一些关于recvbuf/sndbuf的blog,基本上说的是recvbuf就是socket的滑动窗口大小,而滑动窗口大小是16位的,最大也就是64k, 你这边读取出来的数据已经超过64k了,是否我理解上有什么偏差?答:在TCP头部只有16位来表示,所以它的最大值是65536,但是对于一些情况来说需要使用更大的滑动窗口,这时候就要使用扩展的滑动窗口,这时会使用扩展的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-18 17:13:28
                            
                                135阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             
    网络的概念:主机   端口  IP  协议 
             服务器:      localhost/127.0.0.1  客户端:      只是在本机启动客户端,用127.0.0.1访问   
     
                
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-21 19:41:35
                            
                                68阅读
                            
                                                                             
                 
                
                                
                    