自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Netty - WebSocket协议

前言 websockt是需要依赖http1.1 然后返回其响应码101 再开始由http协议转为 webSocket 1、MyServer /** * @author wzcstart * @date 2021/6/30 - 1:49 */ public class MyServer { public static void main(String[] args) throws Exception{ EventLoopGroup bossGroup = new Ni

2021-08-31 20:07:53 214

原创 Netty - HTTP 服务

前言 1、TestServer.java package com.guiguixia.netty.http; import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.ChannelFuture; import io.netty.channel.EventLoopGroup; import io.netty.channel.nio.NioEventLoopGroup; import io.netty.channel.so

2021-08-31 20:07:02 78

原创 Netty(下)

1、Google Protobuf 1.1、编解码器基本介绍 1.2、Netty本身编解码器机制及问题分析 1.3、Protobuf 1.4、Protobuf快速入门案例 1.4.1、Student.proto syntax="proto3"; option java_outer_classname = "StudentPOJO";//生成的外部类名,同时也是文件名 //protobuf 使用message 管理数据 message Student{//会在外部类 St

2021-08-31 20:06:15 79

原创 Netty(中)

1、Netty模型 1.1、简单原理示意图 1.2、示意图解释 1.3、原理示意图进阶版 1.4、原理示意图最终版 1.5、示意图解释 2、Netty快速入门案例 - TCP服务 2.1、NettyServer /** * @author wzcstart * @date 2021/6/23 - 23:51 */ public class NettyServer { public static void main(String[] args) th

2021-08-31 20:05:43 78

原创 Netty(上)

前言 Netty是基于Reactor主从模式来的 1、线程模式基本简介 2、传统阻塞 I/O 服务模式 2.1、工作原理图 2.2、问题分析 3、Reactor模式 Reactor模式又叫Dispatch模式 3.1、解决传统 I/O 服务模型两个缺点 3.2、原理示意图 3.4、Reactor模式分类 4、单Reactor单线程 4.1、原理示意图 4.2、方案说明 4.3、方案优缺点 5、单Reactor多线程 5.1、原理示意

2021-08-31 20:05:01 59

原创 NIO群聊系统

GroupChatServer package com.guiguixia.nio.groupchat; import java.io.IOException; import java.net.InetSocketAddress; import java.nio.ByteBuffer; import java.nio.channels.*; import java.util.Iterator; import java.util.Set; /** * 群聊系统服务端 * @author wzcst

2021-08-31 20:04:18 63

原创 IO模型(NIO、BIO、AIO)

前言 通过图解简单介绍IO模型 1、BIO - 同步阻塞IO Java BIO : 同步并阻塞(传统阻塞型),服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销 1.1、BIO编程简单流程 服务器端启动一个ServerSocket 客户端启动Socket对服务器进行通信,默认情况下服务器端需要对每个客户 建立一个线程与之通讯 客户端发出请求后, 先咨询服务器是否有线程响应,如果没有则会等待,或者被拒绝 如果

2021-08-31 20:03:16 190

原创 Netty实现RPC

1、介绍 RPC(Remote Procedure Call)— 远程过程调用,是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程 两个或多个应用程序都分布在不同的服务器上,它们之间的调用都像是本地方法调用一样(如图) 常见的 RPC 框架有: 比较知名的如阿里的Dubbo、google的gRPC、Go语言的rpcx、Apache的thrift, Spring 旗下的 Spring Cloud。 2、RPC调用流程 2.1、调用流程

2021-08-31 19:59:43 263

空空如也

空空如也

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

TA关注的人

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