加深印象- - - - netty与websockt比较

一、区分netty 和 websocket

       1、 netty是一种框架比如framework、springmvc、baitis等,可以比作多种技术或者协议的集合。

        2、websocket是一种通讯协议比如 tcp/ip协议、http协议、MQTT协议等,可以比作单体去理解。

二、哪些场合使用netty OR websocket

        1、举个栗子:小区摄像头连云服务器,这个时候如果用websocket就不合适。【原因后面讲】这里最适合用netty,原因【netty框架里有介绍这边不啰嗦】简单讲就是客户端和服务端的关系。客户端和服务端之间通过事件方式来维系通道保活,另外框架具备重试机制不需要再通过代码进行实现。

        2、再举个例子:我们浏览csdn网站时候会看到阅读量、收藏、点赞数等,这个时候如果用netty去实现就不合适。【原因后面讲】这里最适合用websock,原因是它本身的定义里有体现加深印象- - - - netty与websockt比较_第1张图片

Websocket是一个轻量级且高效的通讯协议,适合实时双向通讯运用场景。

三、netty框架详解

Netty是一个基于Java NIO的网络编程框架,提供了一套高效的、事件驱动的异步网络通信机制。简化了网络应用程序的开发过程,提供了可靠的、高性能的网络传输。

这边引用知乎里的一遍好文章:

一篇文章看懂Netty框架 - 知乎

四、websockt框架详解

引用作者:(美) 科沃德 Coward作者原话:WebSoCket协议是两个对等点间能够进行消息通讯。原理:基于http / https 3次握手后,upgrade(升级)链路后建立长连接。这里的http/https 可以比作是婚介所,服务器和客户端则比作男方和女方。结婚后婚介所没啥事了,除非断开链接后需要重新链接。websock 全双工 工作模式能够允许服务端主动的向客户端发送数据,这也是为什么websockt被定义为轻量级且高效的通讯协议,实时双向通讯的特性。

                  加深印象- - - - netty与websockt比较_第2张图片

你可能感兴趣的:(java,开发语言,websocket,tcp/ip)