前言 在服务器与客户端进行信息传输的时候,是客户端从服务器拉去消息,还是服务器往客户端推送消息,这是在设计一个需要网络通讯系统需要考虑的问题。本文将介绍推与拉这两种交互方式的...
前言 在服务器与客户端进行信息传输的时候,是客户端从服务器拉去消息,还是服务器往客户端推送消息,这是在设计一个需要网络通讯系统需要考虑的问题。本文将介绍推与拉这两种交互方式的...
前言 本文将介绍kafka的一条消息的发送流程,从消息的发送到服务端的存储。上文说到kafak分为客户端与服务端,要发送消息就涉及到了网络通讯,kafka采用TCP协议进行客...
什么是kafka Kafka官网介绍kafka是一个分布式的流平台。 可以让你发布和订阅流式的记录。这一方面与消息队列或者企业消息系统类似。 可以储存流式的记录,并且有较好的...
前言 Raft算法是解决分布式系统共识的问题的算法,Raft是基于Multi-Paxos的基础上做了简化和限制。不同于Paxos的难以理解,Raft设计的首要目的就是可理解性...
前言 在源码分析的第一部分Netty源码(一)Netty架构解析里面提到了netty的几个关键组件 EventLoopEventLoop是Netty中最重要的组件,一个单线程...
前言 在java nio包中使用Buffer作为数据存放的载体,分为HeapBuffer与DirectBuffer。netty针对nio中的Buffer缺点和自身的使用特点实...
前言 日常开发中经常遇到一个业务发生之后需要触发好几个业务点,比如订单支付完成之后需要发送短信、送会员积分、发送优惠券等。在分布式系统中我们可以通过消息队列实现,各个系统之间...
前言 本文将会具体分析NioEventLoop中的thread,它的启动时机,以及所履行的职责。还会分析一些netty的实现细节,比如解决NIO的bug和一些优化等。 thr...
前言 Netty源码(一)Netty架构解析分析了netty的基本原理和工作流程,其中EventLoop是netty中最核心的组件,本文将会分析EventLoop的主要设计思...
前言 Zab(Zookeeper Atomic Broadcast)是为ZooKeeper协设计的崩溃恢复原子广播协议,它保证zookeeper集群数据的一致性和命令的全局有...
😄
Netty源码(一)Netty架构解析前言 分析一个框架的源码首先要知道这个框架的设计思路是什么,是基于什么原理去实现的。不然直接去看源码,很容易丢失在代码的海洋,比如看Spring源码要先知道IOC和AOP是...
前言 分析一个框架的源码首先要知道这个框架的设计思路是什么,是基于什么原理去实现的。不然直接去看源码,很容易丢失在代码的海洋,比如看Spring源码要先知道IOC和AOP是...
什么是ZooKeeper?ZooKeeper是一个分布式、开源的分布式应用协作服务。它提供了一组简单的原语,分布式应用程序可以在这些原语的基础上实现更高级别的服务,用于同步...
如何提高系统的读的效率?使用缓存。如何提高系统写的效率?使用缓存。提高读写效率的关键在于减小磁盘I/O,特别是随机磁盘I/O。平时我们使用缓存主要用在提高查询效率上面,很少...
NIO(Non-blocking I/O),非阻塞的I/O模型。自java1.4版本之后推出,为什么在已有I/O库之后Java还会推出NIO,以及NIO的原理是什么和基于N...
redis是一个高性能key-value内存数据库。在日常开发中使用redis最常见的就是当做缓存,基于redis的特殊数据结构和相关特性,redis的应用场景还很多,比如实...