处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题。当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警。...
MVCC(Multi Version Concurrency Control的简称),代表多版本并发控制。与MVCC相对的,是基于锁的并发控制,Lock-Based Conc...
Netty 原理 Netty 是一个高性能、异步事件驱动的NIO 框架,基于JAVA NIO 提供的API 实现。它提供了对TCP、UDP 和文件传输的支持,作为一个异步NI...
前言 也许会有人感叹某些人的运气比较好,但是他们不曾知道对方吃过多少苦,受过多少委屈。某些时候就是需要我们用心去发现突破点,然后顺势而上,抓住机遇,那么你将会走向另外一条大道...
前言 零拷贝这三个字,一直是服务器网络编程的关键字,任何性能优化都离不开。在 Java 程序员的世界,常用的零拷贝有 mmap 和 sendFile。那么,他们在 OS 里,...
小菜鸡最近在疯狂面试中,就是为了能拿到一份满意的offer,这不上周又去头条受虐了。 面试过程中,由于小菜鸡的充分准备(letcode各种刷),各种算法题不在话下,顺利的通过...
1、 runAsync 和 supplyAsync方法 CompletableFuture 提供了四个静态方法来创建一个异步操作。 没有指定Executor的方法会使用For...
Redis的pubsub.c是对pubsub功能的实现。Redis的pub/sub是一个稳定快速的消息系统。基于 ziplist 和 dict 实现。 主要包含了消息的发布、...
Redis的t_zset.c是对zset数据结构的实现。zset是由 dict 和zskiplist来实现的。 当元素较少的时候,采用ziplist来实现zset。当元素较多...
Redis的t_set.c是个set数据结构的实现。 当元素都是Integer类型的时候,采用intset来实现。当元素有非Integer类型的时候,采用dict来实现。 当...
Redis的t_list.c是对list数据结构的实现。在Redis3.2之前,list数据结构基于ziplist或linkedlist实现。在Redis3.2之后,list...
Redis的t_hash.c是对hash字典数据结构的实现。主要是基于ziplist、dict、sds实现。 当元素较少的时候,使用ziplist来实现字典数据结构。当元素较...
Redis的t_string.c是对于string数据结构的实现。底层是基于 sds 及 dict 实现的。 首先,了解一下redisDb结构。 Redis允许的最大字符串长...