Loading

摘要: 多线程 生产者消费者模式 package com.mainwood.produceconsume; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.TimeUnit; import java.ut 阅读全文
posted @ 2021-08-02 11:25 mainwoodの慢屋 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 三大缓冲区 1、客户端缓冲区 输入缓冲区会先暂存客户端发送过来的命令,Redis 主线程从输入缓冲区中读取命令,进行处理。当 Redis 主线程处理完数据后,会把结果写入到输出缓冲区,再从输出缓冲区返回给客户端。 1-1、输入缓冲区 缓存区溢出原因: 1、写入了BigKey,如一次性写入了百万级别的 阅读全文
posted @ 2021-07-27 11:30 mainwoodの慢屋 阅读(707) 评论(0) 推荐(0) 编辑
摘要: RedisObject底层结构实现 1、String 底层实现:SDS Redis构建的简单动态字符串(Simple Dynamic String),简称SDS, AOF的缓冲层也用的是SDS 优点: 传统字符串(C字符串) SDS 1. 获取字符串长度的复杂度为O(N) 获取字符串长度的复杂度为O 阅读全文
posted @ 2021-07-23 16:24 mainwoodの慢屋 阅读(96) 评论(0) 推荐(0) 编辑
摘要: ####文件描述符 即指向文件的索引指针 ####直接IO和缓存IO(如图) 缓存 I/O: 又被称作标准 I/O,大多数文件系统的默认 I/O 操作都是缓存 I/O。在 Linux 的缓存 I/O 机制中,以write为例,数据会先被拷贝进程缓冲区,在拷贝到操作系统内核的缓冲区中,然后才会写到存储 阅读全文
posted @ 2021-07-21 20:30 mainwoodの慢屋 阅读(92) 评论(0) 推荐(0) 编辑
摘要: #设计模式 ####1、设计模式七大原则 开闭原则 对扩展开放,对修改关闭 单一职责原则 一个类只干一件事,实现类要单一 里氏替换原则 不要破坏继承体系,子类重写方法功能发生改变,不应该影响父类方法的含义 依赖倒转原则 高层不应该依赖低层,要面向接口编程。 接口隔离原则 一个接口只干一件事,接口要精 阅读全文
posted @ 2021-07-19 16:35 mainwoodの慢屋 阅读(49) 评论(0) 推荐(0) 编辑
摘要: Redis 前言 之前一直想要去自己总结一下redis的用法以及面试的高频问题 如下是一些基础的redis的常见面试题 redis为什么这么快? # 1、redis是基于内存处理,处理速度大大的加强。 # 2、redis是采用单线程模型:在处理读写指令的时候使用单线程,减少了创建多个线程时的开销,减 阅读全文
posted @ 2021-07-09 20:56 mainwoodの慢屋 阅读(52) 评论(0) 推荐(0) 编辑