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

沈阳专业做网站方案做网站还挣钱吗

沈阳专业做网站方案,做网站还挣钱吗,搭建小程序需要什么技术,赣州有哪些公司最近在研究H5推送#xff0c;发现除了我们常用的WebSocket以外#xff0c;其实还有一种协议也能实现H5推送#xff0c;那就是SSE协议。 而且#xff0c;当前主流的大模型平台#xff0c;比如ChatGPT、通义千问、文心一言#xff0c;对话时采用的就是SSE。 什么是SSE协议… 最近在研究H5推送发现除了我们常用的WebSocket以外其实还有一种协议也能实现H5推送那就是SSE协议。 而且当前主流的大模型平台比如ChatGPT、通义千问、文心一言对话时采用的就是SSE。 什么是SSE协议 Server-Sent Events (SSE) 是一种基于HTTP协议的服务器到客户端的单向数据通信技术允许服务器向浏览器实时推送更新而不需要客户端通过轮询等方式反复请求数据。 SSE协议主要用于实现实时更新的Web应用比如股票报价、新闻更新、社交网络的新消息通知等场景。 那么同为H5推送的主流协议SSE和WebSocket有什么区别 SSE VS WebSocket 我们从以下几个方面来进行对比 维度SSEWebSocket协议原理基于HTTP/1.1通过长连接实现服务器单向推送通过独立的WebSocket协议建立双向实时通信连接易用性简单前端使用EventSource对象即可相对复杂需要更多的开发和配置工作兼容性现代浏览器广泛支持同样广泛支持但需注意旧版浏览器兼容性通信方向单向服务器→客户端双向服务器↔客户端事件驱动支持事件数据可通过事件类型区分需自行在应用层实现数据格式主要支持文本数据可携带自定义元数据支持文本和二进制数据格式灵活连接管理浏览器自动处理连接恢复可能面临连接断开问题开发者可全面控制连接状态和错误处理资源效率长期无数据传输时可能出现连接中断需重新连接建立连接后资源消耗相对更低无需频繁重建连接缓存策略利用HTTP缓存策略需要开发者自行实现缓存策略 综合以上对比结果若是H5动作较少的单向刷新场景例如股价刷新、新闻动态等建议选择SSE若是在线协作、实时游戏等H5跟服务端交互较多的场景建议使用WebSocket。 SSE实例 接下来我们就用SpringBoot写一个SSE实例。 首先是服务端引入spring-boot-starter-web包它自带支持SSE协议。 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependency 接下来是创建SSE的Controller接口 package com.test.web;import lombok.extern.slf4j.Slf4j;import org.springframework.http.MediaType;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;import java.io.IOException;import java.util.HashMap;import java.util.Map;/*** SSE测试类*/Slf4jRestControllerRequestMapping(/sse)public class SseController {private static final MapString, SseEmitter map new HashMap();GetMapping(value /createSseEmitter, produces MediaType.TEXT_EVENT_STREAM_VALUE)public SseEmitter createSseEmitter(String clientId) {SseEmitter emitter new SseEmitter(0L);emitter.onCompletion(() - map.remove(emitter));emitter.onTimeout(() - map.remove(emitter));map.put(clientId, emitter);return emitter;}Scheduled(fixedDelay 1000) // 每隔5秒推送一次模拟数据public void pushDataToAllClients() {for (Map.EntryString, SseEmitter entry : map.entrySet()) {try {String data This is some updated data from server at System.currentTimeMillis();entry.getValue().send(SseEmitter.event().name(message).data(data));} catch (IOException e) {log.error(Error sending data to client, e);}}}} 然后是前端测试代码 !DOCTYPE htmlhtml langenheadmeta charsetUTF-8title实时股票价格监控/title/headbodyh1实时股票价格/h1div idstock-price/divscriptconst source new EventSource(/sse/createSseEmitter?clientId123456);source.onopen function() {console.log(Connection to the server was opened.);};source.onmessage function (event) {// document.getElementById(stock-price).innerHTML event.data;const logItem document.createElement(p);logItem.textContent event.data;document.getElementById(stock-price).appendChild(logItem);};source.onerror function(error) {console.error(Error occurred:, error);// 处理重连或其他错误逻辑};/script/body/html 由于SSE不支持跨域此处再加个NGINX代理 location /test {root /home;}location /sse {proxy_pass http://10.10.2.100:8080;proxy_http_version 1.1; # 使用HTTP/1.1以支持长连接proxy_set_header Upgrade $http_upgrade; # 用于Websocket和SSE的Upgrade头proxy_set_header Connection upgrade; # 设置Connection头为upgrade维持长连接proxy_set_header Host $host; # 传递原始Host头给后端proxy_cache_bypass $http_upgrade; # 忽略缓存对于实时连接很重要proxy_read_timeout 60m; # 增加读取超时时间以适应长时间的SSE连接} 运行结果如下 -EOF- 给大家分享一套基于SpringbootVue的停车场管理系统源码在实际项目中可以直接复用。(免费提供文末自取) 一、系统运行图 1、登陆页面 2、车位管理 3、车辆进出管理 二、系统搭建视频教程 源码免费领取方式 扫码后台回复  停车场
http://www.dnsts.com.cn/news/155874.html

相关文章:

  • 云服务器做的网站需要备案python 仿wordpress
  • 做网站广告词宁波谷歌seo推广公司
  • 中国住房和城乡建设网站wordpress分类栏目关键词
  • 公司网站asp源码上海租房网个人房源
  • iis做的网站如何添加播放器网站前台模块包括什么
  • 外包网站设计公司免费网站seo排名优化
  • 免费制作论坛网站模板免费下载合肥网站建设王正刚
  • 达州达县网站建设怎么做劳务公司网站
  • 建设银行的网站是什么情况如何用dreamer做网站
  • 游网站建设方案内容wordpress图片广告
  • 如何跟帖做网站江阴网站开发
  • 小学校园网站建设简介网站集约化平台建设
  • 淘客商品网站怎么做的建设工程网教育网官网
  • 广州网站建设公司推荐网站选择理由描述
  • 深圳58同城网站建设建设门户公司网站
  • 网站建设分为哪几种钢筋网片规格型号
  • ftp网站建设医疗器械外贸网站建设
  • 银川网站建设公司名单深圳seo优化推广
  • 为什么做网站需要服务器网站建设公司取名
  • 丝芙兰网站做的好差网站备案登陆用户名是什么
  • 建设企业网站e路护航官网下载外国做家具的网站
  • 鲜花网站建设的项目介绍烈焰传奇网页版
  • 深圳网站建设工作室一个域名多个网站
  • 计算机学院网站建设小程序开发制作多少钱
  • 为什么小城市做不出来好的网站电子商务主要学什么课程
  • 企业做网站的注意什么做cps需要什么样的网站
  • 皮具网站建设wordpress 当前分类id
  • 教做发绳的网站住建部网站资质查询中宏建设集团
  • 微网站如何做推广大兴网站设计
  • 免费制作动画网站公众号开发教程零基础