加载中
Netty学习笔记(10)——Netty应用示例(1)

本来想先了解Netty组件,然后再学习组件应用的,然后越学越感觉怪异,总感觉少了啥,组件学起来不知道咋用的,想想还是先从Netty应用开始学算了。 自己的技术学习方法:先学习技术的应用,在...

2019/11/24 21:21
134
Netty学习笔记(10)——Netty中的Channel组件

1. Channel的功能 1. 与NIO中的Channel一样,它实现了网络操作的抽象类,聚合了一系列的网络IO功能,包括读写数据、建立连接、关闭连接等功能。通过外观模式,将数据读写、连接建立与断开等操...

2019/11/18 16:08
104
Netty学习笔记(9)——Netty组件ByteBuf

1. ByteBuf作用 1. 当进行数据传输时,都会使用到一个缓冲区,在jdk提供的NIO中最常用的就是ByteBuffer,但在使用的时候,我们很容易会感到ByteBuffer有以下缺点: ByteBuffer实际上就是一个...

2019/11/11 17:23
93
SpringCloud组件——Eureka原理分析

在了解完Eureka的基本使用之后,对于其原理应该基本了解,现在进行一个总结性的原理学习。 1. Eureka服务治理原理分析 1. 关于服务注册: (1)前面说过,服务注册中心会维护一个服务清单表,...

SpringCloud组件——Eureka服务治理

1、什么是是服务治理 1、服务治理是微服务架构中最核心的模块,实现对各个服务的自动化注册以及服务发现机制。那么为什么需要服务治理呢? 假如项目中只有A和B两个服务,A服务需要调用B服务,...

费曼学习法——个人觉得对于程序员的最好学习方法

费曼学习法用通俗易懂的话来说就是:通过向别人清楚的解说某一件事,来确认自己是否真正弄懂了这件事。如果你能让别人理解这件事,那么你肯定也已经掌握了这项技能。 第一步:选择目标 选择目...

2019/11/03 14:51
60
SpringCloud微服务开发应用——简单认识组件

毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,推荐学习书籍《SpringCloud微服务实战》,翟永超编写的这版,详细讲解了各大组件的应用以及其底层实现原理。 实际上,Spring Cloud是一个...

现代分布式系统架构演进

双 11 即将来临,本文以设计淘宝网的后台架构为例,介绍从一百个并发到千万级并发情况下服务端的架构的14次演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体...

2019/10/29 12:24
80
Netty学习笔记(8)——了解Netty

1. 为什么选择Netty NIO(包括AIO)的缺点导致在实际开发中并不能直接运用其进行开发: NIO 的类库和 API 繁杂,使用麻烦。需要熟练掌握 Selector、ServerSocketChannel、SocketChannel、Byt...

Netty学习(7)——AIO

1. NIO2.0——AIO 1. 从某种程度上来说,NIO依然是同步阻塞的 虽然NIO中Channel(网络Channel)和Buffer可以实现非阻塞的read/write操作,而且Selector提供了多路复用的功能,使得可以在一个...

2019/10/17 17:46
82
Netty学习(6)——通道间数据传输

1. FileChannel实现通道间的数据传输 在Java NIO中,如果两个通道中有一个是FileChannel,那你可以直接将数据从一个channel传输到另外一个channel。 transferFrom() FileChannel的transferF...

2019/10/14 14:15
77
Netty学习笔记(5)——NIO中的Scatter/Gather机制

1. Scatter/Gather机制简介 1. Scatter机制:即发散机制。发散指的是从Channel中读取是指在读操作时将读取的数据写入多个buffer中。因此,Channel将从Channel中读取的数据“分散(scatter)”...

2019/10/14 13:40
86
Netty学习笔记(4)——Selector

1. Selector用来干什么 Selector(选择器)是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件。这样,一个单独的线程可以管理多个channel,从而管理多个...

2019/10/12 20:48
101
Netty学习笔记(3)——Buffer学习

Java NIO中的Buffer用于和NIO通道进行交互。如你所知,数据是从通道读入缓冲区,从缓冲区写入到通道中的。 缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成N...

2019/10/12 16:41
47
Netty学习笔记(2)——Channel详解

Channel是代替了传统IO中的流对象,Channel类既可以进行读操作,也可以进行写操作,但同一个Channel只能进行读或写中的一个操作。并不能直接通过Channel来进行数据读写,必须要通过Buffer来间...

2019/10/12 14:50
64
Netty学习笔记(1)——NIO概述

1. 传统IO(BIO)存在的问题 同步阻塞 也就是传统IO(也就是InputStream、OutputStream等Java中IO包下的类以及 java.net下面提供的部分网络 API,比如 Socket、ServerSocket、HttpURLConnec...

2019/10/12 10:24
53
学习设计模式——装饰者模式

在现实生活中,常常需要对现有产品增加新的功能或美化其外观,如房子装修、相片加相框等。在软件开发过程中,有时想用一些现存的组件。这些组件可能只是完成了一些核心功能。但在不改变其结构...

2019/10/08 15:32
110
学习设计模式——桥接模式

1. 认识桥接模式 1. 定义:将抽象与实现分离,使它们可以独立变化。用组合关系代替继承关系来实现,从而降低了抽象和实现这两个可变维度的耦合度。也就是说,通常我们会首先定义一个抽象化接...

2019/10/08 14:50
53
zookeeper知识点总结

1.ZooKeeper是什么? ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行...

2019/09/29 17:13
90
zookeeper集群运行原理简单解析

ZooKeeper中的各种角色 ZooKeeper与客户端   每个Server在工作过程中有三种状态:     LOOKING:当前Server不知道leader是谁,正在搜寻     LEADING:当前Server即为选举出来的lea...

2019/09/29 17:03
64

没有更多内容

加载失败,请刷新页面

返回顶部
顶部