前言
今天我们将介绍WebSocket。为什么要引入WebSocket?主要是因为今年我参加了JCconf和一线主管的要求想要成为一名Web服务工程师需要有什么能力。在这里与您分享这个话题,如果我们同时向成千上万的人提供网络服务,我们可以每次与客户端使用TCP与客户进行通信吗?当然,是实现及时传播,之后有几个问题,需要我们去做,当我回到家自己一点点的作业,如果想知道如何完成这个架构将需要使用负载平衡(负载平衡)的概念,,这部分可以参考Spring Cloud Netflix项目和技术解决方案
所以我们不会走得太远,让我们写一个WebSocket编程。
什么是websocket
Websocket是一个全双工通信协议。本协议是双方生产的标准。当双方进行沟通时,双方之间的沟通是怎样的?
这并不完全正确,但你可以想象得到。
WebSocket使客户端和服务器之间的交换更加容易,消除了每次传输需要问您三个问题的需要,这使得服务器能够主动向客户端发送数据。
在站点上完成推送技术是将轮询(轮询)技术应用到客户端浏览器上,但是浏览器需要对服务器不断的请求,并且发送头文件的时间更长,通常会有明显的延迟。
WebSocket优点:
1。建立连接后,每个传输所需要的头被缩短,交换消息的速度要快得多。
2。全双工,服务器可以主动发送消息给客户。
3所示。你可以接触到持久层的附件,不需要每次都要求你呆在家里。
WebSocket 如何运作?
我的目录架构
Spring Boot如何建构WebSocket programming
加入pring-boot-starter-websocket依赖
pom.xml配置
2.新增一个Model来建立一个接受讯息的Model
3.新增一个Server端传送给Client的Model
4.建构一个WenSocketConfig类
注意!!警告!! 如果你的依赖有
spring-boot-starter-web
那这一步将会无法完成你会找不到
AbstractWebSocketMessageBrokerConfigurer
的类別
@ EnableWebSocketMessageBroker注释声明使跺脚协议,他的儿子是一个WebSocket协议传输(message broker),当注册控制器(Controller)可以使用@ MessageMapping
configureMessageBroker方法是Message broker。
registerStompEndpoints方法是,我们注册一个节点来映射指定的URL,在方法中注册一个STOMP端点,并指定SockJS协议。
5.我们还要建构一个Controller来当我们的入口
@ MessageMapping类似于@ RequestMapping。
重点与心得
1。本文首先介绍如何构建服务器端,然后构建客户端并进行演示测试。
2。我们需要构建两个数据模型,一个是接收客户端消息,一个消息被发送到客户端。
3所示。这是一个广播的yes发送样本,如果你想成为一个独立的私人聊天室你可以参考Spring Security来整合它可以达到你想要在一起的目的。
4所示。下一篇文章将介绍如何完成我们的聊天室。
5。在这里的spring -强调一旦样本不能添加启动-启动- web。
6。当它们扫描组内的引导@配置时,如果有@ Enable…将使配置
领取专属 10元无门槛券
私享最新 技术干货