Chrome Https访问Goahead服务器卡死问题

2024-03-21 00:48

本文主要是介绍Chrome Https访问Goahead服务器卡死问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

该问题没有从根本上定位解决,备忘:

问题描述:

Chrome Https访问Goahead服务器,Chrome只请求了一部分静态资源,然后只发心跳,无限期等待,不会继续发起请求;

点击浏览器的空白标签栏,或者缩放等方式重新聚焦动作,Chrome会继续请求剩余的静态网页资源;

(F12调试看chorme浏览器的network ,不发起剩余资源请求)

只要不把浏览器关掉,再次请求都相对比较流畅;


Goahead是单线程,卡死问题可能和这个相关;

wireshark抓网络数据包来看,并没有看到服务器出错;

在Chrome不再请求新的资源(如asp网页或者网页table中的 图片资源)时,依然保持和server的心跳;

交互帧为,三路握手后 互发https hello, 然后chrome发送FIN,四路挥手;


另外一个现象:

https方式第一次进页面比之后要慢很多;可能和ssl的握手有关系;因为这不是个主要的问题,不影响功能,没有持续关注;


目前的解决方式:

用屏蔽部分资源和功能的方式,来看看是否是请求少的时候就没有问题了;

如果是,那么尝试采用减少资源请求次数;


css文件的包含:@import url("./style/main.css");

script脚本的包含:<script language="javascript" type="text/javascript" src="./common.js"></script>

F12调试的时候,会看得到,都会单独发起一个请求;

查找规律发现,出现Chrome卡的问题和请求数量有一定的关系;

所以,尽量减少如上文件包含的方式;

将有些不需要马上开始的请求,使用window.setTimeout()的方式延迟,避免同一时间请求太多;


个人猜测:可能服务器的反馈速度没办法达到Chrome的一个性能要求,于是Chrome暂停了更多的请求,除非你再次聚焦到该网页;

这么猜测的原因是个人使用Chrome特意去访问国外网站,速度很慢,于是出现了和我们网页类似的问题;

具体的Chrome策略并没有进行核实;


但是作为一个嵌入式的网站,需求照着apache服务器来对比,却没有考量到我们使用的Goahead是一个单线程的简单服务器;

也有我们软件设计最初没有考虑性能,很多同事的WEB基础不过硬,边做边学;

后期的设计用Goahead3.1时,跨平台用JQuery,AJAX的请求数量和合理,运行应该是可以相对稳定和易维护的。



这篇关于Chrome Https访问Goahead服务器卡死问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/831259

相关文章

电脑蓝牙连不上怎么办? 5 招教你轻松修复Mac蓝牙连接问题的技巧

《电脑蓝牙连不上怎么办?5招教你轻松修复Mac蓝牙连接问题的技巧》蓝牙连接问题是一些Mac用户经常遇到的常见问题之一,在本文章中,我们将提供一些有用的提示和技巧,帮助您解决可能出现的蓝牙连接问... 蓝牙作为一种流行的无线技术,已经成为我们连接各种设备的重要工具。在 MAC 上,你可以根据自己的需求,轻松地

Java 中的跨域问题解决方法

《Java中的跨域问题解决方法》跨域问题本质上是浏览器的一种安全机制,与Java本身无关,但Java后端开发者需要理解其来源以便正确解决,下面给大家介绍Java中的跨域问题解决方法,感兴趣的朋友一起... 目录1、Java 中跨域问题的来源1.1. 浏览器同源策略(Same-Origin Policy)1.

Windows Server 2025 搭建NPS-Radius服务器的步骤

《WindowsServer2025搭建NPS-Radius服务器的步骤》本文主要介绍了通过微软的NPS角色实现一个Radius服务器,身份验证和证书使用微软ADCS、ADDS,具有一定的参考价... 目录简介示意图什么是 802.1X?核心作用802.1X的组成角色工作流程简述802.1X常见应用802.

如何清理MySQL中的binlog问题

《如何清理MySQL中的binlog问题》:本文主要介绍清理MySQL中的binlog问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目http://www.chinasem.cn录清理mysql中的binlog1.查看binlog过期时间2. 修改binlog过期

如何解决yum无法安装epel-release的问题

《如何解决yum无法安装epel-release的问题》:本文主要介绍如何解决yum无法安装epel-release的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录yum无法安装epel-release尝试了第一种方法第二种方法(我就是用这种方法解决的)总结yum

IDEA下"File is read-only"可能原因分析及"找不到或无法加载主类"的问题

《IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题》:本文主要介绍IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题,具有很好的参... 目录1.File is read-only”可能原因2.“找不到或无法加载主类”问题的解决总结1.File

idea中project的显示问题及解决

《idea中project的显示问题及解决》:本文主要介绍idea中project的显示问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录idea中project的显示问题清除配置重China编程新生成配置总结idea中project的显示问题新建空的pr

redis在spring boot中异常退出的问题解决方案

《redis在springboot中异常退出的问题解决方案》:本文主要介绍redis在springboot中异常退出的问题解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴... 目录问题:解决 问题根源️ 解决方案1. 异步处理 + 提前ACK(关键步骤)2. 调整Redis消费者组

NGINX 配置内网访问的实现步骤

《NGINX配置内网访问的实现步骤》本文主要介绍了NGINX配置内网访问的实现步骤,Nginx的geo模块限制域名访问权限,仅允许内网/办公室IP访问,具有一定的参考价值,感兴趣的可以了解一下... 目录需求1. geo 模块配置2. 访问控制判断3. 错误页面配置4. 一个完整的配置参考文档需求我们有一

Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题

《Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题》:本文主要介绍Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录一、前言二、系统架构检测三、卸载旧版 Go四、下载并安装正确版本五、配置环境变量六、验证安装七、常见