加载中
Netty内存池之PoolArena详解

PoolArena是Netty内存池中的一个核心容器,它的主要作用是对创建的一系列的PoolChunk和PoolSubpage进行管理,根据申请的不同内存大小将最终的申请动作委托给这两个子容器进行管理。整体上,P...

04/15 09:52
221
Netty内存池之PoolSubpage详解

在Netty内存池中,内存大小在8KB~16M的内存是由PoolChunk维护的,小于8KB的内存则是由PoolSubpage来维护的。而对于低于8KB的内存,Netty也是将其分成了两种情况0~496byte和512byte~8KB。其中...

04/08 13:29
183
Netty内存池之PoolChunk原理详解

PoolChunk是Netty内存池中的重要组成部分,其作用主要在于维护了一个较大的内存块,当需要申请超过8KB的内存时,就会从PoolChunk中获取。本文首先会对PoolChunk的整体结构进行讲解,然后会讲...

04/01 11:32
2.1K
Netty Reactor模式实现原理详解

在前面的文章中(Reactor模型详解),我们讲解了Reactor模式的各种演变形式,本文主要讲解的则是Netty是如何实现Reactor模式的。这里关于Netty实现的Reactor模式,需要说明的是,其实现的模式...

Netty解决粘包和拆包问题的四种方案

在RPC框架中,粘包和拆包问题是必须解决一个问题,因为RPC框架中,各个微服务相互之间都是维系了一个TCP长连接,比如dubbo就是一个全双工的长连接。由于微服务往对方发送信息的时候,所有的请...

03/18 09:54
4.3K
Reactor模型详解

对于Java IO模型的变化,描述最为清楚的莫属于Doug Lea对Reactor模型的讲解《Scalable IO in Java》。本文则主要围绕该文档,对Java IO模型的演变过程进行讲解,并且会讲解各个模型所解决的问...

03/11 11:22
920
系统运行缓慢,CPU 100%,以及Full GC次数过多问题的排查思路

处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题。当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警。本文主要针对系统运...

Java IO使用的四种模式

对于Java IO,从大的种类上来分,可以分为BIO和NIO。BIO全称为Blocked IO,也即阻塞型IO,而NIO则是在jdk 1.4中引入的,一般称其为New IO,因为这是相对于1.4版本之前的阻塞型IO而言的,但是...

02/25 08:12
3.5K
ByteBuffer详解

在Java nio中,主要有三大组件:Buffer,Channel和Selector。这三者之间的关系可以按照如下方式进行理解: Buffer提供了一个字节缓冲区,其可以不断的从Channel中读取接收到的数据。Buffer的...

02/18 10:12
169
kafka命令行工具大全

创建主题 sh kafka-topics.sh --zookeeper <zookeeper connect> --create --topic <string> --replication-factor <integer> --partitions <integer> --if-not-exists 示例: sh kafka-topic...

01/30 22:29
244
zookeeper客户端使用

Java客户端api 1.1 创建会话 ZooKeeper(String connectString, int sessionTimeout, Watcher watcher); ZooKeeper(String connectString, int sessionTimeout, Watcher watcher, boolean can...

zookeeper简介

zookeeper介绍 zookeeper的设计目标是将那些复杂切容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用。 zookeeper是一个典型的分布式...

2018/12/31 19:18
47
一致性协议

2PC-两阶段提交 协议说明 阶段一:提交事务请求 事务询问:协调者向所有的参与者发送事务内容,询问是否可以执行事务提交操作,并开始等待各参与者的响应; 执行事务:各参与者节点执行事务操...

2018/12/31 14:43
23
数据一致性

概念 数据一致性就是指在对一个副本数据进行更新的同时,必须确保也能够更新到其他的副本,否则不同的副本之间的数据将不再一致。 2. 一致性级别 强一致性:这种一致性级别是最符合用户直觉的...

2018/12/31 08:57
33
分布式事务

事务的概念 一个数据库事务通常包含对数据库进行读或写的一个操作序列。它的存在包含有以下两个目的: 为数据库操作提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态...

RPC粘包拆包

概念 RPC(Remote Procedure Call)泛指客户端与服务器端之间,通过网络进行数据交互的过程时,不需要了解网络底层实现的技术。我们接触的http、WebService、dubbo-rpc、rmi都可以称为是RPC的一...

https加密

本文仅供本人学习使用,请勿转载,谢谢! 1. 加密方式 常见的加密方式:对称加密和非对称加密。 对称加密算法和非对称加密算法只不过是密码学中的两种加密算法罢了,所谓的算法就是一种可以将...

2018/12/29 09:45
49
BlockingQueue详解

BlockingQueue,顾名思义,指的是一个阻塞队列。其主要用于生产者-消费者模式,也就是在多线程场景时生产者线程在队列头部添加元素,而消费者线程则在队列尾部消费元素,通过这种方式能够达到...

2018/12/23 13:06
129
多线程编程

本文谢绝一切转载,仅做本人记录笔记使用,谢谢! 1. Java程序运行原理 1. JVM运行时数据区 JVM运行时数据区可以分为两部分:线程共享部分和线程独占部分。线程共享部分主要包括方法区和堆内...

2018/12/22 21:27
90
ZooKeeper命令大全

创建节点 # 创建节点,-s表示顺序节点,-e表示临时节点,默认是持久节点 create [-s] [-e] path data acl 示例 create /zk-book 123 查看节点 ls path [watch] 示例 ls /zk-book 获取节点数据...

2018/12/17 20:21
33

没有更多内容

加载失败,请刷新页面

返回顶部
顶部