好吧,这是一个奇怪的事情。
我正在开发一个 php 脚本,它可以根据请求执行大量工作(图像处理)。因此,这并不罕见,它会在 10 秒内发出响应,有时长达 30 秒:这是一个很长的脚本,这对于下一部分很重要。
在记录图像处理代码时,我注意到只应调用一次的进程被调用了两次。
原因:Chrome 在 3 秒后取消第一个请求,然后再次请求相同的 URL。
顺序始终相同。
已取消的请求在“计时”选项卡中显示为“已停止”。
这仅发生在 Chrome 中(对我来说是 92.0.4515.107)。我在 Firefox 中没有看到这种行为。
现在如何才能重现这种巫术呢?很简单,我可以在 2 个不同提供商(GCE 和 OVH)的 2 个不同服务器上进行复制,并且它与对此 URL 的初始请求的持续时间有一个奇怪的链接。
在您的网络服务器上创建一个新的 php 脚本,仅包含
<?php sleep(10); echo 'Done'; ?>
在 Chrome 中调用您的脚本 URL
第一次调用就会成功
但接下来的所有调用肯定会触发“序列”
通过检查 Chrome 日志,我认为这与 HTTP2_SESSION 有链接
t=235805 [st= 5] +HTTP_TRANSACTION_SEND_REQUEST [dt=1]
t=235806 [st= 6] HTTP_TRANSACTION_HTTP2_SEND_REQUEST_HEADERS
--> :method: GET
:authority: my.server.com
:scheme: https
:path: …
Run Code Online (Sandbox Code Playgroud) 我正在尝试确定在Linux上停滞过程的原因.这是一个电信应用程序,在相当重的负载下运行.8个T1跨度中的每一个都有一个单独的过程.每隔一段时间,其中一个进程就会变得非常无响应 - 在通常非常忙碌的进程日志中记录事件之前可能需要50秒.
可能有些系统资源不足.显而易见的事情 - CPU使用率 - 看起来没问题.
哪些linux实用程序可能最适合捕获和分析此类事物,并尽可能不引人注意,因为这是一个高负载系统?它似乎需要是流程而不是系统导向.也许正在持续监控/ proc/pid/XX?Top在这里似乎没什么用处.
当我尝试在浏览器中首次加载或打开导入的大型 Jupyter / iPython 笔记本(超过 10 MB)时,浏览器卡住/停顿/冻结或需要很长时间并出现无响应页面警报。我在使用不同的浏览器(Chrome / FireFox / Safari)时遇到了问题。