2013/5 记录一: PHP PHP::Stomp?的(每次)连接超时时间=默认值 60秒 ;(郑昀注1,这种超时时间设置在生产环境是难以容忍的。一般设置2~3秒超时。) PHP::Stomp?最终放弃连接抛出异常前,尝试连接不同主机的次数=默认值 10次 ;(郑昀注2,randomize=fals
2013/5
记录一:
- PHP
- PHP::Stomp?的(每次)连接超时时间=默认值 60秒;(郑昀注1,这种超时时间设置在生产环境是难以容忍的。一般设置2~3秒超时。)
- PHP::Stomp?最终放弃连接抛出异常前,尝试连接不同主机的次数=默认值 10次;(郑昀注2,randomize=false时,每次循环都会更换一个主机)
- PHP 脚本的最大执行时间=?:
- PHP-FPM 模式下,max_execution_time 参数没有太大效果,它控制的是进程的CPU占用时间, 默认值30秒;
- note: set_time_limit()函数和配置指令 max_execution_time只影响脚本本身执行的时间。任何发生在诸如使用? system()的系统调用,流操作,数据库操作等的脚本执行的最大时间不包括其中,当该脚本已运行。
- 真正起点儿作用的是 php-fpm.conf 里的?
0s ,它的含义是?The?timeout?(in?seconds)?for?serving?a?single?request?after?which?the?worker?process?will?be?terminated; 默认值0,即off; - 既然?request_terminate_timeout?= 0 &??max_execution_time?= 30s ,那么默认情况下 很难准确地说 PHP 脚本在被 PHP FPM 终结掉前,到底执行时间是多少秒。
- PHP-FPM 模式下,max_execution_time 参数没有太大效果,它控制的是进程的CPU占用时间, 默认值30秒;
- mysql
- innodb_lock_wait_timeout:一个 InnoDB 事务遇到一个行锁,等待的超时时间, 默认值50秒,届时会打印“Lock wait timeout exceeded; try restarting transaction”错误。
- Nginx
- fastcgi_connect_timeout:同 FastCGI 服务器的连接超时时间,默认值 60秒, 它不能超过75秒;线上设为 300秒=5分钟;
- note:Nginx 504 Gateway Time-out:所请求的网关没有请求到,即没有请求到可以执行的 PHP-CGI 。这可能意味着此时 PHP 进程已经达到了最大进程数且均在执行中(或阻塞中),所以无法处理新请求,新请求在等待 fastcgi_connect_timeout 秒后就收到504错误。
- fastcgi_send_timeout:?Nginx 进程向?FastCGI?进程发送 request ,整个过程的超时时间,默认值60秒;线上设为300秒;
- fastcgi_read_timeout:??FastCGI??进程向??Nginx??进程发送 response ,整个过程的超时时间,默认值60秒;线上设为300秒。
- fastcgi_connect_timeout:同 FastCGI 服务器的连接超时时间,默认值 60秒, 它不能超过75秒;线上设为 300秒=5分钟;
记录二:
Pragma 仅仅是一个 Request 头域指令,如果你在 Response 头域里放了 Pragma:no-cache,没有意义。 参考1, 参考2。
HTTP/1.1缓存应该把"Pragma:no_cache"当作好像客户端发送了"cache_control:no-cache"。在http中不会有新的pragma指令会被定义。
记录三:
真的需要 post-check 和 pre-check 控制指令吗?
常看见 response 头域里,有“Cache-control: post-check=0,pre-check=0”的控制指令。
其实,post-check 和 pre-check 都是 微软从 IE5 引入的扩展指令,HTTP 1.1 第14节 Header Field Definitions 里并未定义这两个指令。
因此,如果你仅仅是写习惯了 post-check=0,pre-check=0,可以停止这种书写方式,请使用 HTTP 1.1 标准的 Cache-control 控制指令。
?
-over-
赠图几枚:
一副图说明好的技术构架和差的技术构架
?
?

本文链接
原文地址:随手小记:PHP-FPM模式下PHP最大执行时间、Pragma和post-check, 感谢原作者分享。

如何使用php-fpm进行高性能调优PHP是一种非常流行的服务器端脚本语言,广泛用于开发网页应用和动态网站。然而,随着访问量的增加,PHP应用程序的性能可能会受到影响。为了解决这个问题,我们可以使用php-fpm(FastCGIProcessManager)来进行高性能调优。本文将介绍如何使用php-fpm来提升PHP应用程序的性能,并提供代码示例。一、

如何使用PHP-FPM优化提高WooCommerce应用的性能概述WooCommerce是一个非常流行的电子商务插件,用于在WordPress网站上创建和管理在线商店。然而,随着商店的增长和流量的增加,WooCommerce应用可能会变得缓慢和不稳定。为了解决这个问题,我们可以使用PHP-FPM来优化和提高WooCommerce应用的性能。什么是PHP-FP

利用php-fpm连接池提升数据库访问性能概述:在Web开发中,数据库的访问是非常频繁且耗时的操作之一。传统的方法是每次数据库操作都新建一个数据库连接,使用完毕后再关闭连接。这种方式会造成数据库连接的频繁建立和关闭,增加了系统的开销。为了解决这个问题,可以利用php-fpm连接池技术来提升数据库访问性能。连接池的原理:连接池是一种缓存技术,将一定数量的数据库

PHP-FPM是一种常用的PHP进程管理器,用于提供更好的PHP性能和稳定性。然而,在高负载环境下,PHP-FPM的默认配置可能无法满足需求,因此我们需要对其进行调优。本文将详细介绍PHP-FPM的调优方法,并给出一些代码示例。一、增加进程数默认情况下,PHP-FPM只启动少量的进程来处理请求。在高负载环境下,我们可以通过增加进程数来提高PHP-FPM的并发

什么是php-fpm?下面本篇带大家了解一下php-fpm,介绍一下优化 php-fpm 时我们到底要优化什么,希望对大家有所帮助!

ubuntu没有php-fpm的解决办法:1、通过执行“sudo apt-get”命令添加php的源地址;2、查看有没有php7的包;3、通过“sudo apt-get install”命令安装PHP;4、修改配置监听9000端口来处理nginx的请求;5、通过“sudo service php7.2-fpm start”启动“php7.2-fpm”即可。

利用php-fpm进程管理实现负载均衡随着互联网应用的日益复杂和用户量的增加,负载均衡成为一个不可或缺的技术。负载均衡的目标是将流量分配到多个服务器上,以提高系统的稳定性和性能。在PHP应用中,php-fpm(PHPFastCGIProcessManager)是一种常见的进程管理工具,可以被用于实现负载均衡,并且提供了灵活的配置选项。本文将介绍如何利用

php-fpm性能监控与调优策略引言:随着互联网的发展,PHP作为一种高效的服务器端脚本语言,被广泛应用于Web开发领域。而php-fpm作为php运行环境的一种解决方案,具有较高的并发处理能力。然而,在高并发的情况下,php-fpm会面临性能瓶颈的问题。本文将介绍php-fpm的性能监控与调优策略,旨在提高php-fpm的性能和稳定性。一、php-fpm性


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Atom编辑器mac版下载
最流行的的开源编辑器

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

Dreamweaver CS6
视觉化网页开发工具