首页 > 其他分享 >利用流来提高图片在服务器响应时间

利用流来提高图片在服务器响应时间

时间:2023-05-21 12:32:50浏览次数:46  
标签:HTTP 请求 MXHR JS 响应 服务器 PHP 图片


前面谈过如何巧用外部资源,尽可能减低服务器负载,CSS 通过合并压缩,JS进行压缩小文件大小来加快服务器的响应的时间,在网站看到一篇用流的形式来加载图片,速度快上好几倍, 采用MXHR技术,MXHR全称为Multipart XMLHttpRequest。它允许客户端只用一个HTTP请求就可以从服务端向客户端传送多个资源。这样就能节省大量的时间,因为HTTP请求是很花 时间的。在本例中所有的图片只进行了一次HTTP请求,并不是每张图片一次请求。所以理论上能提高3-5倍的加载速度。对于上一次纯HTML和JS的代 码,本次在后台还使用了PHP。利用PHP读取图片,并将其转为base64编码。这里要说明的是对于img标签的src它不仅支持直接写图片路径,还可 以用这样的方式:

Mxhr的却减少了HTTP请求的数量,但是也有浏览器自身的限制,由于IE6,7中的xmlhttp请求不支持readyState为3的情况,而且不支持图片的:

 

img.src = 'data:image/png;base64,' + imageData;
下面是网上的一个实例,如何利用JS+PHP实流加载图片,MXHR PHP版实例

 


 

标签:HTTP,请求,MXHR,JS,响应,服务器,PHP,图片
From: https://blog.51cto.com/u_2700990/6318886

相关文章

  • 新手建站:你阿里云服务器搭建网站图文教程
    使用阿里云服务器快速搭建网站教程,先为云服务器安装宝塔面板,然后在宝塔面板上新建站点,阿里云服务器网以搭建WordPress网站博客为例,阿里云百科来详细说下从阿里云服务器CPU内存配置选择、Web环境、域名解析到网站上线全流程:步骤一:云服务器配置选择如果你已经有了阿里云服务器,那么可......
  • 阿里云轻量应用服务器端口开通教程
    阿里云轻量应用服务器端口怎么开启?轻量应用服务器端口在防火墙中打开,云服务器ECS端口在安全组中开启,阿里云百科以80端口为例来详细说下阿里云轻量应用服务器端口开放图文教程,其他的端口如8080、3306、443、1433也是同样的方法进行开启端口:轻量应用服务器开通端口教程1、登录到轻量......
  • 阿里云ECS服务器端口怎么打开?在安全组开通
    阿里云服务器ECS端口怎么打开?云服务器ECS端口在安全组中开启,轻量应用服务器端口在防火墙中打开,阿里云百科以80端口为例,来详细说下阿里云服务器端口开放图文教程,其他的端口如8080、3306、443、1433也是同样的方法进行开启端口:云服务器ECS端口开通教程阿里云ECS服务器的端口设置是在......
  • NSFW 图片分类
    NSFW指的是 不适宜工作场所("NotSafe(orSuitable)ForWork;")。在本文中,将介绍如何创建一个检测NSFW图像的图像分类模型。 完整文章https://avoid.overfit.cn/post/8f681841d02e4a8db7bcf77926e123f1......
  • jackson配置响应时间格式、时区(查询时间与当地时间不一致)
    配置文件:application.ymlspring:jackson:date-format:yyyy-MM-ddHH:mm:sstime-zone:GMT+8输出格式:yyyy-MM-ddHH:mm:ssGMT+8:就是格林威治标准时间的英文缩写(GreenwichMeanTime格林尼治标准时间),是世界标准时间.gmt+8是格林威治时间+8小时。中国所在时区就是......
  • HTTP 响应状态码
    状态码的职责是当客户端向服务器端发送请求时,描述返回的请求结果。借助状态码,用户可以知道服务器端是正常处理了请求,还是出现了错误。这一期我们就来总结一下HTTP状态码。HTTP状态码分为5类:状态码类别原因短语1XXInformational(信息性状态码)接收的请求正在处理2XXSuccessful(......
  • Linux SSH服务器拒绝了密码,请再输入一次(解决方法)
    1.在Linux终端输入sudovim/etc/ssh/sshd_config2.按i进入编辑模式,修改配置文件,找到Authentication所在位置,修改成如下所示取消这四条的注释LoginGraceTime2m            #登陆时间PermitRootLoginyes           #允许roo......
  • 整理:各个浏览器及web服务器对URL(get)长度的限制
     http1.1协议中对url的长度是不受限制的:TheHTTPprotocoldoesnotplaceanyapriorilimitonthelengthofaURI.ServersMUSTbeabletohandletheURIofanyresourcetheyserve,andSHOULDbeabletohandleURIsofunboundedlengthiftheyprovideGET-......
  • 用Docker发布Study.BlazorOne.Blazor到公网测试服务器
    #1、准备公网上的测试数据库。之前我们在VisualStudio里面调试的时候,使用的都是localhost的数据库。现在需要在公网上准备一个SQLServer。然后执行下面的步骤1)把Study.BlazorOne.DbMigrator设置为启动项目;2)修改appsettings.json中的连接字符串将本地localhost的配置注释掉,加上......
  • drf-请求与响应
    目录1模块与包的使用2断言3drf之请求3.1Request类对象的分析3.1.1Request3.1.2属性3.2请求,能够接受的编码格式4drf之响应4.1响应类的对象Response4.1.1Response4.1.2属性4.2响应的格式4.3状态码5视图之两个视图基类5.1使用APIView+序列化类+Response写接口5.2推导......