首页 > 其他分享 >1_认识同步和异步

1_认识同步和异步

时间:2023-01-05 23:33:06浏览次数:21  
标签:异步 同步 浏览器 请求 认识 用户 按钮 页面

什么是同步交互

首先用户向HTTP服务器提交一个处理请求。接着服务器端接收到请求后,按照预先编写好的程序中的业务逻辑进行处理,比如和数据库服务器进行数据信息交换。最后,服务器对请求进行响应,将结果返回给客户端,返回一个HTML在浏览器中显示,通常会有CSS样式丰富页面的显示效果。

 

优点

可以保留浏览器后退按钮的正常功能。在动态更新页面的情况下,用户可以回到前一个页面状态,浏览器能记下历史记录中的静态页面,用户通常都希望单击后退按钮时,就能够取消他们的前一次操作,同步交互可以实现这个需求.

缺点

1同步交互的不足之处,会给用户一种不连贯的体验,当服务器处理请求时,用户只能等待状态,页面中的显示内容只能是空白。

2因为已经跳转到新的页面,原本在页面上的信息无法保存,好多信息需要重新填写


什么是异步交互

指发送一个请求,不需要等待返回,随时可以再发送下一个请求,即不需要等待。在部分情况下,我们的项目开发中都会优先选择不需要等待的异步交互方式。将用户请求放入消息队列,并反馈给用户,系统迁移程序已经启动,你可以关闭浏览器了。然后程序再慢慢地去写入数据库去。这就是异步。异步不用等所有操作等做完,就响应用户请求。即先响应用户请求,然后慢慢去写数据库,用户体验较好

 

 

优点

1前端用户操作和后台服务器运算可以同时进行,可以充分利用用户操作的间隔时间完成运算

2页面没有跳转,响应回来的数据直接就在原页面上,页面原有信息得以保留

缺点

可能破坏浏览器后退按钮的正常行为。在动态更新页面的情况下,用户无法回到前一个页面状态,这是因为浏览器仅能记录的始终是当前一个的静态页面。用户通常都希望单击后退按钮,就能够取消他们的前一次操作,但是在AJAX这样异步的程序,却无法这样做。

标签:异步,同步,浏览器,请求,认识,用户,按钮,页面
From: https://www.cnblogs.com/2324hh/p/17029135.html

相关文章

  • Python 异步:完整教程
    Asyncio允许我们在Python中使用基于协程的并发异步编程。尽管asyncio已经在Python中使用多年,但它仍然是Python中最有趣但最令人沮丧的领域之一。对于新开发人员来......
  • 为PHP添加swoole异步并行扩展
    ​​为PHP添加swoole异步并行扩展​​ 1.确认安装环境仅支持Linux操作系统,核心代码兼容FreeBSD,需要调整某些编译的参数和细节才能通过Linux内核版本2.3.32以上PHP5.3.......
  • Beyond Compare 4 for Mac(文件同步对比工具)v4.4.4(27058)中文版
    BeyondCompare4mac版哪里有?BeyondCompare是一款超好用的专业级文件夹及文件同步对比工具!可以帮助你找到并协调源代码、文件夹、图像和数据间的差异,即使包括zip文档中或......
  • PHP异步调用实现方式
    PHP异步调用实现方式浏览器和服务器之间只一种面向无连接的HTTP协议进行通讯的,面向无连接的程序的特点是客户端请求服务端,服务端根据请求输出相应的程序,不能保持持久连接。......
  • 如何在forEach内使用异步调用 async/await
    翻自:HowtouseasyncandawaitinaforEachJSloop?https://learn.coderslang.com/0144-how-to-use-async-and-await-in-a-foreach-js-loop/事实上我们无法在forEa......
  • 时间同步概览
    Basler接口:千兆网(GigEVision)或CameraLink接口支持PoE的千兆网(GigE)、支持PoCL的CameraLink、USB3.0相机符合GigEVision、USB3Vision和CameraLink标准协议,具......
  • unity3d异步加载场景
    ​​unity3d​​​​loading界面​​​​异步加载​​​​进度条​​根据宣雨松前辈的教程来做的,因为我用到的场景不是在游戏里的那种(本人做增强现实的,完全把unity拿来做应......
  • android基础02 - 多媒体、多线程与异步任务、Service、网络
    多媒体通知通知渠道:程序对自己发出的通知进行分类,用户可根据渠道对消息进行屏蔽或设置响铃振动。一个应用的通知渠道一旦创建就无法再修改,只能再创建新的可在Activity、......
  • Unity利用协同实现场景异步加载
    1.usingUnityEngine;2.usingSystem.Collections;3.4.publicclassFightTriggle:MonoBehaviour{5.privateAsyncOperationasync;6.i=0;7.......
  • 多传感器的空间同步和时间同步(Lidar+Camera+Radar+IMU)
    应用背景介绍多传感器融合是一项结合多传感器数据的综合性前沿内容,主要包括Camera、激光雷达、IMU、毫米波雷达等传感器的融合,在自动驾驶、移动机器人的感知和定位领域中占......