当前位置: 首页 > news >正文

做电玩城设计的网站南宁seo推广公司

做电玩城设计的网站,南宁seo推广公司,安阳 网站建设,常州做网站那家快目录 一、WebSocket 详解1. 定义与特点:2. 工作原理:3. 应用场景: 二、入门案例 一、WebSocket 详解 1. 定义与特点: WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。它允许客户端和服务器之间进行实时、双向的数据传…

目录

  • 一、WebSocket 详解
    • 1. 定义与特点:
    • 2. 工作原理:
    • 3. 应用场景:
  • 二、入门案例

一、WebSocket 详解

1. 定义与特点:

  • WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。它允许客户端和服务器之间进行实时、双向的数据传输,克服了传统 HTTP 协议只能由客户端发起请求、服务器响应的单向通信模式的局限性。
  • 特点包括低延迟、实时性强、减少不必要的网络流量和服务器资源消耗等。
  • HTTP协议和WebSocket协议对比:
  • HTTP是短连接
  • WebSocket是长连接
  • HTTP通信是单向的,基于请求响应模式(浏览器发送请求给服务器)
  • WebSocket支持双向通信
  • HTTP和WebSocket底层都是TCP连接

2. 工作原理:

  • 建立连接:客户端向服务器发起 WebSocket 连接请求,该请求通过 HTTP 协议进行握手。如果服务器支持 WebSocket,它会返回一个特殊的 HTTP 响应,通知客户端可以将连接升级为 WebSocket 连接。
  • 数据传输:一旦连接建立,客户端和服务器可以随时双向发送数据。数据以帧的形式进行传输,可以是文本数据或二进制数据。
  • 连接关闭:任何一方都可以发送关闭连接的请求,关闭连接后双方不能再进行数据传输。

**思考**:既然WebSocket支持双向通信,功能看似比HTTP强大,那么我们是不是可以基于WebSocket开发所有的业务功能?

WebSocket缺点

  • 服务器长期维护长连接需要一定的成本
  • 各个浏览器支持程度不一
  • WebSocket 是长连接,受网络限制比较大,需要处理好重连

结论:WebSocket并不能完全取代HTTP,它只适合在特定的场景下使用

3. 应用场景:

  • 实时聊天应用:实现用户之间的即时通信,消息实时推送。
  • 在线游戏:同步游戏状态,实时交互。
  • 金融交易平台:实时显示股票价格、交易数据等。
  • 监控系统:实时反馈系统状态、设备运行数据等。
  • 弹幕的实现

二、入门案例

以下是一个使用 Java 和 Spring Boot 实现的简单 WebSocket 入门案例:

  1. 创建一个 Spring Boot 项目,并在项目的依赖管理文件(如 pom.xml)中添加 Spring Boot WebSocket 的依赖:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
  1. 配置 WebSocket:

创建一个配置类,用于配置 WebSocket 端点:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.socket.config.annotation.EnableWebSocket;
import org.springframework.web.socket.config.annotation.WebSocketConfigurer;
import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry;@Configuration
@EnableWebSocket
public class WebSocketConfig implements WebSocketConfigurer {@Overridepublic void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {registry.addHandler(sampleWebSocketHandler(), "/ws").setAllowedOrigins("*");}@Beanpublic SampleWebSocketHandler sampleWebSocketHandler() {return new SampleWebSocketHandler();}
}
  1. 创建 WebSocket 处理类:
import org.springframework.stereotype.Component;
import org.springframework.web.socket.TextMessage;
import org.springframework.web.socket.WebSocketSession;
import org.springframework.web.socket.handler.TextWebSocketHandler;import java.io.IOException;
import java.util.ArrayList;
import java.util.List;@Component
public class SampleWebSocketHandler extends TextWebSocketHandler {private List<WebSocketSession> sessions = new ArrayList<>();@Overridepublic void handleTextMessage(WebSocketSession session, TextMessage message) throws IOException {// 当接收到客户端消息时,可以进行处理并向所有连接的客户端广播String payload = message.getPayload();for (WebSocketSession s : sessions) {s.sendMessage(message);}}@Overridepublic void afterConnectionEstablished(WebSocketSession session) throws Exception {// 当连接建立时,将 session 添加到列表中sessions.add(session);}@Overridepublic void afterConnectionClosed(WebSocketSession session, CloseStatus status) throws Exception {// 当连接关闭时,从列表中移除 sessionsessions.remove(session);}
}
  1. 在前端页面中使用 WebSocket:
<!DOCTYPE html>
<html><head><script>var socket = new WebSocket("ws://localhost:8080/ws");socket.onmessage = function (event) {console.log(event.data);};function sendMessage() {var message = document.getElementById("messageInput").value;socket.send(message);}</script>
</head><body><input type="text" id="messageInput"><button onclick="sendMessage()">发送消息</button>
</body></html>
http://www.mnyf.cn/news/37021.html

相关文章:

  • 做网络课程的网站百度新闻排行榜
  • 开发公司甲供材料管理办法网站优化关键词排名公司
  • 品牌网站建设费公众号推广渠道
  • 做网站前台步骤手机怎么创建网站
  • 移商网站建设软文范例大全1000字
  • 江阴做网站最新军事新闻 今日 最新消息
  • 网站建设优化服务价位广州广告公司
  • wordpress隐藏链接查看排名优化培训
  • 地方网站建站平台百度广告推广费用一年多少钱
  • 手机网站 pc网站模板产品营销软文
  • 开发网站最后进行的步骤是什么网页开发
  • 坪地网站建设怎么样推广联系方式
  • 家具网站策划书电商培训机构排名
  • 如何做小程序推广南昌seo专业团队
  • 做养生的网站多吗举例说明什么是seo
  • 国外怎么做推广网站谷歌浏览器网页版入口手机版
  • 南京网站建设cnee免费文件外链网站
  • 做列表的网站免费注册网页网址
  • 网站改版Excel怎么做免费的外链平台
  • 安防公司手机网站调价智能关键词软件
  • 百度云网站建设公司网站建设流程
  • 网站平台建设费用网络营销方案怎么写
  • 宁波环保营销型网站建设seo英文
  • 诸城网站制作ip域名查询网
  • 小说网站建设采集百度信息流广告投放
  • 网站模板一般用什么软件做全网络品牌推广
  • 做网站维护一工资多少钱代刷网站推广
  • 一级a做爰全过程网站网页设计代码
  • 钢构网架公司上海搜索优化推广
  • 做淘客网站注意事项微商店铺怎么开通