Netty 实战入门详解

Netty 实战入门详解Netty目前是一个被广泛使用的网络通信框架,例如阿里开源的Dubbo以及分布式的搜索引擎Elasticsearch底层通讯都是基于Netty实现。它是Java网络的首选框架,作为一名称职的程序员每个人都应该了解和掌握它。即使工作中你没有直接使用Netty,它也会为你的工作带来积极的影响。本场Chat将从一简单的示例程序开始,逐渐深入并逐步揭开其背后的面纱,为你打开Netty…

大家好,欢迎来到IT知识分享网。

RPC(Remote Procedure Call)远程过程调用,直观说法就是A通过网络调用B的过程方法,这个过程主要涉及三点:

  • Call ID映射
    在RPC中,所有的函数都必须有自己的一个ID。这个ID在所有进程中都是唯一确定的。客户端在做远程过程调用时,必须附上这个ID。客户端和服务端分别维护一个 {函数 与Call ID} 的对应表,当客户端需要进行远程调用时,它就查一下这个表,找出相应的Call ID,然后把它传给服务端,服务端也通过查表,来确定客户端需要调用的函数,然后执行相应函数的代码。
  • 序列化和反序列化
    客户端怎么把参数值传给远程的函数呢?客户端需要把参数先转成一个字节流,传给服务端后,服务端再把字节流转成自己能读取的格式。这个过程叫序列化和反序列化。同理,从服务端返回给客户端的值也需要序列化反序列化的过程。
  • 网络传输
    RPC要做到用户无感知的调用远程服务必定要经过网络传输,而netty正好是是Java编写的快速开发高性能高可靠性的网络编程框架。目前使用netty作为传输层的RPC框架很多,国内知名的有dubbo,motan等。大部分RPC框架都使用TCP协议,但其实UDP也可以,而gRPC干脆就用了HTTP2。

所以,要实现一个RPC框架,其实只需要解决以上三点实现了就可以了

Netty 目前是一个被广泛使用的网络通信框架,例如阿里开源的 Dubbo 以及分布式的搜索引擎 Elasticsearch底层通讯都是基于Netty实现。它是 Java 网络的首选框架,作为一名称职的程序员每个人都应该了解和掌握它。即使工作中你没有直接使用 Netty,它也会为你的工作带来积极的影响。本场 Chat 将从一简单的示例程序开始,逐渐深入并一一揭开其背后的神秘面纱,为你打开 Netty 的大门,让你彻底理解Netty,做到完全可以上手Netty程序。

本场 Chat 将为你带来以下内容:

  • 如何从0编写一个 Netty 程序。
  • 实现 WebSocket 长连接。
  • 编写 Netty 程序的一般步骤是什么?
  • Netty 中几个重要的对象是什么,他们之间的关系是什么?
  • Netty 的线程模型是什么?

本 Chat 适合想学习 Netty 的初学者,最好了解一些 NIO 知识,可以参看本博客中几篇介绍Java Nio的文章,当然不了解也没关系,不影响对文章的理解。

https://gitbook.cn/gitchat/activity/5b62ae54bb4f014dbcbdbb6c

这里写图片描述

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/14868.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信