有7种重要的channel模式需要理解,因为channel实现了Goroutine之间的通信。 等待结果模式 这是channel的基本使用模式,创建一个goroutine来执...
引言 context 是 Go 中广泛使用的程序包,由 Google 官方开发,在 1.7 版本引入。它用来简化在多个 go routine 传递上下文数据、(手动/超时)中...
零拷贝技术主要包括mmap和sendfile,在RocketMQ、Kafka这类高性能消息队列中间件中有应用,在Netty这种高性能网络通信框架中也有应用。在Java里mma...
前言 mysql的优化最常见的就是对索引的优化,在《一文彻底读懂Explain[https://www.jianshu.com/p/a8fea2777f3d]》中有对索引的优...
一、你们为什么使用mq?具体的使用场景是什么? mq的作用很简单,削峰填谷。以电商交易下单的场景来说,正向交易的过程可能涉及到创建订单、扣减库存、扣减活动预算、扣减积分等等。...
顺序消息指的是生产者投递消息的顺序与消息消费的顺序一致。某个Topic上所有消息都是顺序的称为全局顺序消息,如果是具有某个相同业务ID的一组消息保证其顺序性则成为部分顺序消息...
在kafka中,有许多请求并不是立即返回,而且处理完一些异步操作或者等待某些条件达成后才返回,这些请求一般都会带有timeout参数,表示如果timeout时间后服务端还不满...
在之前的一篇文章中,我们已经深入理解了布隆过滤器的基本原理,并且了解到它在缓存系统中有较多的应用。Redis提供的Bitmap正好能够作为布隆过滤器所需要的位数组的基础,本文...
目录 引子 布隆过滤器介绍产生的契机设计思想优缺点与用途假阳性率的计算 Guava中的布隆过滤器BloomFilter类的成员属性BloomFilter的构造估计最优m值和k...
场景 在后端服务开发时,现在很流行的框架组合就是SSM(SpringBoot + Spring + MyBatis),在我们进行一些业务系统开发时,会有很多的业务数据表,而表...
概述 看了好久spring源码,有些地方理解的不深刻,决定手写一下BeanFactory来加深理解 规范 spring中最主要的bean工厂实现就是DefaultListab...
缓存雪崩 定义 缓存雪崩是指在短时间内,有大量缓存同时过期,导致大量的请求直接查询数据库,从而对数据库造成了巨大的压力,严重情况下可能会导致数据库宕机的情况叫做缓存雪崩。 正...
你是真的细😁
Netty 源码解析 ——— 服务端启动流程 (下)本文是Netty文集中“Netty 源码解析”系列的文章。主要对Netty的重要流程以及类进行源码解析,以使得我们更好的去使用Netty。Netty是一个非常优秀的网络框架,...
好文好文!学习了👍
Netty 源码解析 ——— 基于 NIO 网络传输模式的 OP_ACCEPT、OP_CONNECT、OP_READ、OP_WRITE 事件处理流程本文是Netty文集中“Netty 源码解析”系列的文章。主要对Netty的重要流程以及类进行源码解析,以使得我们更好的去使用Netty。Netty是一个非常优秀的网络框架,...
上一篇 <<<一个网站访问慢的真正原因[https://www.jianshu.com/p/4bd6b3f577d0]下一篇 >>>压缩静态资源减少带宽传输的方式[https...
Redis6总纲 https://www.jianshu.com/p/901dc5a0c683[https://www.jianshu.com/p/901dc5a0c683]...
我们再次回顾这幅图,通过先前的讲解,现在是不是亲切很多了。图中绿色的acceptor应该是你最熟悉的部分,之前我们在ServerBootstrap中进行了详细分析。我们知道了...
服务器的启动过程大量使用了EventLoop和Future/Promise,在阅读源码之前,建议首先要对Netty的这两种机制进行了解。由于Netty更多是在服务器端使用,因...