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

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

Jun 06, 2016 pm 08:09 PM
php php-fpm 执行 时间 最大 模式

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

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

CakePHP arbeitet mit Datenbank CakePHP arbeitet mit Datenbank Sep 10, 2024 pm 05:25 PM

Das Arbeiten mit der Datenbank in CakePHP ist sehr einfach. In diesem Kapitel werden wir die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) verstehen.

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

See all articles