Home php教程 php手册 随手小记:PHP-FPM模式下PHP最大执行时间、Pragma和post-check

随手小记:PHP-FPM模式下PHP最大执行时间、Pragma和post-check

Jun 06, 2016 pm 08:09 PM
php php-fpm implement time maximum model

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 终结掉前,到底执行时间是多少秒
  • 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秒。

记录二:

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

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

CakePHP Date and Time CakePHP Date and Time Sep 10, 2024 pm 05:27 PM

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

Discuss CakePHP Discuss CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

CakePHP File upload CakePHP File upload Sep 10, 2024 pm 05:27 PM

To work on file upload we are going to use the form helper. Here, is an example for file upload.

CakePHP Creating Validators CakePHP Creating Validators Sep 10, 2024 pm 05:26 PM

Validator can be created by adding the following two lines in the controller.

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

CakePHP Quick Guide CakePHP Quick Guide Sep 10, 2024 pm 05:27 PM

CakePHP is an open source MVC framework. It makes developing, deploying and maintaining applications much easier. CakePHP has a number of libraries to reduce the overload of most common tasks.

How do you parse and process HTML/XML in PHP? How do you parse and process HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

See all articles