zoukankan      html  css  js  c++  java
  • 前端发送异步请求,后端处理时间较长,前端在后端处理完成在页面显示

    场景:

    1、前端发送处理请求后,后端开始处理。
    2、后端处理时间较长,估计有2、3分钟(时间每次都不太确定)才能处理完。
    3、后端处理完后,前端在页面上显示处理完成。

    解决:

    这类问题其实本质问题是:后端如何给前端主动推送消息?
    答案是:只使用http无法推送。
    就只能要么定时发送请求,要么建立websocket链接
    定时发送请求问服务端,是否处理完成。
    建立websocket,这样服务端也就可以主动给客户端推送消息了。但是事实上,因为各方面网络环境的原因,websocket的连接可能会断开。造成断开的原因很多(比如手机的客户端,信号不好;比如突然断网;比如服务器波动;比如服务器可能带宽一时不足等等),都有可能断开。
    所以用websocket也必须进行一个较长时间的定时发送http请求以避免断开的情况。
    所以还是定时发送http请求最好。
    当然可以做一些优化,比如最少需要2分钟才能完成,那么询问的http请求可以在2分钟之后再发送。

  • 相关阅读:
    diff命令
    vsftp建立虚拟用户不同目录分配不同权限操作步骤详解
    vsftpd配置文件详解
    vsftp 详解鸟哥版
    vsftp 虚拟用户
    xfs文件系统磁盘配额
    磁盘配额
    磁盘配额实例详解
    Linux 文件服务---------- nfs Server
    [转]Win7 UAC的安全、兼容及权限
  • 原文地址:https://www.cnblogs.com/ZerlinM/p/14665484.html
Copyright © 2011-2022 走看看