自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 问答 (1)
  • 收藏
  • 关注

原创 三、Netty高性能架构设计

文章目录三、Netty高性能架构设计1、Netty概述1.1、原生NIO存在的问题1.2、Netty优点2、I/O线程模型2.1、传统阻塞I/O服务模型2.1.1、模型分析2.1.2、模型实现代码示例2.2、Reactor模型概述2.3、单Reactor单线程模式2.2.1、模型分析2.2.2、模型实现代码示例2.4、单Reactor多线程模型2.4.1、模型分析2.4.2、模型实现代码示例2.5...

2020-02-22 14:53:25 2514 1

原创 二、NIO详解

二、NIO详解关键词:Buffer、Channel、SelectionKey、Selector、事件Buffer:缓存数组,就是一个内存块,底层用数组实现与Channel进行数据的读写。数据的读取写入是通过Buffer, 这个和BIO 一样, 而BIO 中要么是输入流,或者是输出流, 不能双向,但是NIO的Buffer 是可以读也可以写, 需要 flip 方法切换。Channel:...

2020-02-20 15:30:22 3296 6

原创 一、IO流

1、IO流概览如图所示,Java将IO流分为了字节流和字符流。而每个流又分为了输入流和输出流。重点:可以通过名字就知道该流对象的作用,比如说:FileInputStream的作用就是将文件转换成输入流,固它的构造方法肯定是接收一个文件类型的对象。然后比如:ByteArrayOutputStream的作用就是输出一个字节数组。字节流:我们知道,在程序中数据存储的最小单位是bit(位),...

2020-03-07 15:26:42 242

原创 八、Netty实现简单RPC调用

八、Netty简单RPC调用1、RPC基本介绍RPC(Remote Procedure Call,远程过程调用,是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程两个或多个应用程序都分布在不同的服务器上,它们之间的调用都像是本地方法调用一样(如图)常见的 RPC 框架有: 比较知名的如阿里的Dubbo、goog...

2020-03-03 16:33:19 1063

原创 七、TCP粘包和拆包

七、TCP粘包和拆包1、什么是拆包和粘包TCP是面向连接的,面向流的,提供高可靠性服务。收发两端(客户端和服务器端)都要有一一成对的socket,因此,发送端为了将多个发给接收端的包,更有效的发给对方,使用了优化方法(Nagle算法),将多次间隔较小且数据量小的数据,合并成一个大的数据块,然后进行封包。这样做虽然提高了效率,但是接收端就难于分辨出完整的数据包了,因为面向流的通信是无消息保护...

2020-03-03 14:12:16 892

原创 六、Netty的Handler

六、Netty的Handler文章目录六、Netty的Handler1、Handler介绍2、Handler链式调用3、Handler编解码器4、简单实例5、Log4j整合到Netty1、Handler介绍netty的组件设计:Netty的主要组件有Channel、EventLoop、ChannelFuture、ChannelHandler、ChannelPipe等我们先来复习一下...

2020-02-28 00:26:12 2145 3

原创 五、GoogleProtobuf

五、GoogleProtobuf1、编码与解码编写网络应用程序时,因为数据在网络中传输的都是二进制字节码数据,在发送数据时就需要编码,接收数据时就需要解码codec(编解码器) 的组成部分有两个:decoder(解码器)和 encoder(编码器)。encoder 负责把业务数据转换成字节码数据,decoder 负责把字节码数据转换成业务数据。Netty本身的编解码的机制和问...

2020-02-27 15:28:00 790

原创 四、Netty核心组成

四、Netty核心组成1、Bootstrap、ServerBootstrapBootstrap 意思是引导,一个 Netty 应用通常由一个 Bootstrap 开始,主要作用是配置整个 Netty 程序,串联各个组件,Netty 中 Bootstrap 类是客户端程序的启动引导类,ServerBootstrap 是服务端启动引导类常见方法:方法名称方法介绍publ...

2020-02-26 21:04:17 1600 2

转载 一、Java IO概述

一、Netty概述1、Netty介绍和应用场景1.1、Netty介绍Netty是由JBOSS提供的一个Java开源框架,现为Github上的独立项目Netty是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络IO程序Netty主要针对在TCP协议下,面向Clients端的高并发应用,或者Peer-to-Peer场景下的大量数据持续传输的应用。Netty本质是...

2020-02-15 17:52:33 2370 3

原创 支付宝官方sdk笔记

公共配置引入包:<dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId> <version>3.0.0</version> </dependen...

2020-01-08 17:09:45 4210 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除