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

公司注销后 网站备案吗静态网站用什么做最快

公司注销后 网站备案吗,静态网站用什么做最快,网站设计公司 杭州,越秀做网站SSE即 server send event 服务器发送事件#xff0c;在在早期可能会使用ajax向服务器轮询的方式#xff0c;使浏览器第一时间接受到服务器的消息#xff0c;但这种频率不好控制#xff0c;消耗也比较大。但是对于SSE来说#xff0c;当客户端向服务端发送请求#xff0c;服…SSE即 server send event 服务器发送事件在在早期可能会使用ajax向服务器轮询的方式使浏览器第一时间接受到服务器的消息但这种频率不好控制消耗也比较大。但是对于SSE来说当客户端向服务端发送请求服务端会抓住这个请求不放等到有数据时才返回给客户端但客户端手动消息后再向服务器发送请求周而复始。这种方式好处是减少了服务器的请求数量也大大减少了服务器的压力。以下是第一种方式的代码的演示浏览器不断向服务器请求服务器用线程睡眠5s再返回结果。1、SseController 控制器import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import java.util.Random;​/*** description: 服务器端推送控制器** author: Shenshuaihu* version: 1.0* data: 2019-06-25 23:29*/Controllerpublic class SseController {​/*** 输出类型 text/event-stream 是对服务器端SSE的支持* 此处每5s向浏览器推送随机消息* return*/RequestMapping(value /push, produces text/event-stream)public ResponseBody String push() {Random random new Random();try {Thread.sleep(5000);} catch (InterruptedException e) {e.printStackTrace();}return data:Testing 1,2,3: random.nextInt() \n\n;}}2、显示结果的页面 sse.jspSSE-Code sse.jsp ​服务器推送 可以用于消息订阅解决长短轮询不是解决问题server send event 当客户端方服务器发送请求时 服务器抓住不放 等有数据时 再回复给客户端客户端收到消息时发给送给服务器如此循环参考内容https://www.jianshu.com/p/bc5a9b4a1cd1​​console.log(!!Window EventSource: !!Window.EventSource)if (!!window.EventSource) {var source new EventSource(push);s ;source.addEventListener(message, function (evt) {s evt.data ;$(#msgFromPush).html(s);});​source.addEventListener(open, function (evt) {console.log(连接打开.)})​// 添加SSE客户端监听获取服务端推送的消息source.addEventListener(error, function (evt) {if (evt.readyState EventSource.CLOSED) {console.log(连接关闭.)} else {console.log(evt.readyState)}}, false);​} else {console.log(你的浏览器不支持SSE.)}​​/*if(window.EventSource){​var eventSource new EventSource(http://localhost:8080/push);​//只要和服务器连接就会触发open事件eventSource.addEventListener(open,function(){console.log(和服务器建立连接);});​//处理服务器响应报文中的load事件eventSource.addEventListener(load,function(e){console.log(服务器发送给客户端的数据为: e.data);});​//如果服务器响应报文中没有指明事件默认触发message事件eventSource.addEventListener(message,function(e){console.log(服务器发送给客户端的数据为: e.data);});​//发生错误则会触发error事件eventSource.addEventListener(error,function(e){console.log(服务器发送给客户端的数据为: e.data);});​}else{console.log(服务器不支持EvenSource对象);}*/​显示的结果SSE-.png二、使用Servlet 3.0 异步方法处理第二种方式演示浏览器循环请求服务端服务端用定时任务每5S设置一下数据返回给浏览器1、开启异步方法的支持 WebInitializer.javaimport org.springframework.web.WebApplicationInitializer;import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;import org.springframework.web.servlet.DispatcherServlet;​import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.ServletRegistration.Dynamic;​/*** description: Web配置 代替web.xml* author: Shenshuaihu* version: 1.0* data: 2019-06-13 23:22*/public class WebInitializer implements WebApplicationInitializer {Overridepublic void onStartup(ServletContext servletContext) throws ServletException {AnnotationConfigWebApplicationContext context new AnnotationConfigWebApplicationContext();context.register(MyMvcConfig.class);// 新建的webApplicationContext ,注册配置类并将其和当前servletContext关联。context.setServletContext(servletContext);​// 注册SpringMVC 的 DispatcherServletDynamic servlet servletContext.addServlet(dispatcher, new DispatcherServlet(context));servlet.addMapping(/);servlet.setLoadOnStartup(1);// 开启对异步的支持servlet.setAsyncSupported(true);}}2、AsyncController.java 控制层只用掉serviceimport com.ch4.service.PushService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.context.request.async.DeferredResult;​/*** description:** author: Shenshuaihu* version: 1.0* data: 2019-06-27 08:32*/Controllerpublic class AsyncController {Autowiredprivate PushService pushService;​RequestMapping(/defer)ResponseBodypublic DeferredResult deferredCall() {return pushService.getAsyncUpdate();}}3、PushService.javaimport org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Service;import org.springframework.web.context.request.async.DeferredResult;​/*** description: SSE 定时任务* 在PushService里面产生 DeferredResult 给控制器使用* 通过 Scheduled 定时更新DeferredResult** author: Shenshuaihu* version: 1.0* data: 2019-06-27 08:32*/Servicepublic class PushService {​private DeferredResult deferredResult;​public DeferredResult getAsyncUpdate() {deferredResult new DeferredResult();return deferredResult;}​Scheduled(fixedDelay 5000)public void refresh() {if (deferredResult ! null) {deferredResult.setResult(new Long(System.currentTimeMillis()).toString());}}}3、数据页面async.jsppageEncodingUTF-8%async support-Code defer.jsp ​​​​​deferred();​function deferred() {$.get(defer, function (data) {console.log(data);s ;s data ;$(#defer).html(s)// 完成后在向服务器请求deferred();}​);}​4、需要在核销配置类用开启任务ConfigurationEnableWebMvcComponentScan(com.ch4)EnableSchedulingpublic class MyMvcConfig extends WebMvcConfigurerAdapter {}SSE-aync.png总结SSE用于订阅消息是需要浏览器不断的请求与websocket有相似之处2019/06/30晚于成都
http://www.zqtcl.cn/news/703898/

相关文章:

  • 网站营销的流程品牌推广方式有哪些
  • 网站开发的条件美术字设计
  • 网站可以自己做服务器么wordpress架站教程
  • 用ps怎么做网站导航条怎么做部署iis网站
  • 酒店 网站构建怎么创建自己的网址
  • 江苏推广网站建设业务个人工作室网站源码带后台
  • 色一把做最好的网站赤峰微信网站建设
  • 指定网站长期建设 运营计划网站淘宝客 没备案怎么做
  • 绵阳网站推广排名知名商业网站有哪些
  • 简要描述创建商务站点的商务天津建设工程合同备案网站
  • 做展示空间设计的网站wordpress调用作品分类
  • 网站怎么做访问量统计百度百科怎么创建自己
  • 泉州开发网站的公司有哪些网站页面相似度查询工具
  • 卖文章的网站源码咸阳做网站的公司电话
  • 网站建设案例百度云怎么在手机上传百度云wordpress
  • 传媒公司取名seo网站推广怎么收费
  • 网站建设具体详细过程WordPress usdt收款
  • 网站标题应怎设置生产备案号怎么查询网站
  • 怎样建立网站目录结构网站 项目方案
  • jsp做网站还响应式科技公司网站模板
  • 杭州网站建设设计公司做阀门网站
  • 用模板建站青岛企业网站制作公司
  • 网站建设经费预算表辽宁工程建设招标网
  • sql数据库查询网站模板谷歌浏览器网页版入口
  • 成都h5建站市场监督管理局举报电话
  • 百度推广弄个网站头像要钱吗?最新新闻热点素材
  • 江苏做网站找谁wordpress主题设置插件
  • 郑州微信网站开发建筑网招工平台
  • 给网站挂黑链普工招聘最新招聘信息
  • 重庆推广网站排名价格上海房产信息网官网