Enviar búsqueda
Cargar
PHP-FPM の子プロセス制御方法と設定をおさらいしよう
•
0 recomendaciones
•
2,313 vistas
Shohei Okada
Seguir
2021/10/02, 03 開催「PHP Conference Japan 2021」(https://phpcon.php.gr.jp/2021/)における LT 資料です。
Leer menos
Leer más
Ingeniería
Denunciar
Compartir
Denunciar
Compartir
1 de 20
Descargar ahora
Descargar para leer sin conexión
Recomendados
HTTP/2 入門
HTTP/2 入門
Yahoo!デベロッパーネットワーク
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Shin Ohno
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
例外設計における大罪
例外設計における大罪
Takuto Wada
こわくない Git
こわくない Git
Kota Saito
Recomendados
HTTP/2 入門
HTTP/2 入門
Yahoo!デベロッパーネットワーク
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Shin Ohno
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
例外設計における大罪
例外設計における大罪
Takuto Wada
こわくない Git
こわくない Git
Kota Saito
nginx入門
nginx入門
Takashi Takizawa
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
Shingo Fukui
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
クラウド環境下におけるAPIリトライ設計
クラウド環境下におけるAPIリトライ設計
Kouji YAMADA
Docker Compose 徹底解説
Docker Compose 徹底解説
Masahito Zembutsu
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
yoku0825
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線
Motonori Shindo
Laravel の paginate は一体何をやっているのか
Laravel の paginate は一体何をやっているのか
Shohei Okada
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
サーバPUSHざっくりまとめ
サーバPUSHざっくりまとめ
Yasuhiro Mawarimichi
Mavenの真実とウソ
Mavenの真実とウソ
Yoshitaka Kawashima
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
do_aki
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
Yasutaka Hamada
Más contenido relacionado
La actualidad más candente
nginx入門
nginx入門
Takashi Takizawa
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
Shingo Fukui
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
クラウド環境下におけるAPIリトライ設計
クラウド環境下におけるAPIリトライ設計
Kouji YAMADA
Docker Compose 徹底解説
Docker Compose 徹底解説
Masahito Zembutsu
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
yoku0825
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線
Motonori Shindo
Laravel の paginate は一体何をやっているのか
Laravel の paginate は一体何をやっているのか
Shohei Okada
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
サーバPUSHざっくりまとめ
サーバPUSHざっくりまとめ
Yasuhiro Mawarimichi
Mavenの真実とウソ
Mavenの真実とウソ
Yoshitaka Kawashima
La actualidad más candente
(20)
nginx入門
nginx入門
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
DockerコンテナでGitを使う
DockerコンテナでGitを使う
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
クラウド環境下におけるAPIリトライ設計
クラウド環境下におけるAPIリトライ設計
Docker Compose 徹底解説
Docker Compose 徹底解説
できる!並列・並行プログラミング
できる!並列・並行プログラミング
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線
Laravel の paginate は一体何をやっているのか
Laravel の paginate は一体何をやっているのか
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
サーバPUSHざっくりまとめ
サーバPUSHざっくりまとめ
Mavenの真実とウソ
Mavenの真実とウソ
Similar a PHP-FPM の子プロセス制御方法と設定をおさらいしよう
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
do_aki
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
Yasutaka Hamada
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記
96smcln
PHPの今とこれから2020
PHPの今とこれから2020
Rui Hirokawa
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
Rui Hirokawa
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
do_aki
Webサーバのチューニング
Webサーバのチューニング
Yu Komiya
20240203_札幌PHP勉強会_フロントコントローラを実装して簡易CMSを作る_公開用.pdf
20240203_札幌PHP勉強会_フロントコントローラを実装して簡易CMSを作る_公開用.pdf
koukimiurah
運用ドキュメントから見たシステム運用を考える Vol.2.2-資料一式編
運用ドキュメントから見たシステム運用を考える Vol.2.2-資料一式編
Naoya Hashimoto
JIT のコードを読んでみた
JIT のコードを読んでみた
y-uti
Flumeを活用したAmebaにおける大規模ログ収集システム
Flumeを活用したAmebaにおける大規模ログ収集システム
Satoshi Iijima
php-src の歩き方
php-src の歩き方
do_aki
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
Yoshio Hanawa
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
Masanori Oobayashi
Janog33.5
Janog33.5
(^-^) togakushi
Solaris ディープダイブセミナー #4: A-2-1 サービス実行を超えた 新たなサービス管理アーキテクチャ Service Management...
Solaris ディープダイブセミナー #4: A-2-1 サービス実行を超えた 新たなサービス管理アーキテクチャ Service Management...
SolarisJP
Web基礎
Web基礎
stx_kata
Osc2018 tokyo spring_scap
Osc2018 tokyo spring_scap
Kazuki Omo
Arduino を PHP で制御する
Arduino を PHP で制御する
Kenichi Ahagon
perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)
NTT DATA OSS Professional Services
Similar a PHP-FPM の子プロセス制御方法と設定をおさらいしよう
(20)
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記
PHPの今とこれから2020
PHPの今とこれから2020
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
Webサーバのチューニング
Webサーバのチューニング
20240203_札幌PHP勉強会_フロントコントローラを実装して簡易CMSを作る_公開用.pdf
20240203_札幌PHP勉強会_フロントコントローラを実装して簡易CMSを作る_公開用.pdf
運用ドキュメントから見たシステム運用を考える Vol.2.2-資料一式編
運用ドキュメントから見たシステム運用を考える Vol.2.2-資料一式編
JIT のコードを読んでみた
JIT のコードを読んでみた
Flumeを活用したAmebaにおける大規模ログ収集システム
Flumeを活用したAmebaにおける大規模ログ収集システム
php-src の歩き方
php-src の歩き方
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
Janog33.5
Janog33.5
Solaris ディープダイブセミナー #4: A-2-1 サービス実行を超えた 新たなサービス管理アーキテクチャ Service Management...
Solaris ディープダイブセミナー #4: A-2-1 サービス実行を超えた 新たなサービス管理アーキテクチャ Service Management...
Web基礎
Web基礎
Osc2018 tokyo spring_scap
Osc2018 tokyo spring_scap
Arduino を PHP で制御する
Arduino を PHP で制御する
perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)
Más de Shohei Okada
「登壇しているひとは偉い」という話
「登壇しているひとは偉い」という話
Shohei Okada
PHP 8.0 の新記法を試してみよう!
PHP 8.0 の新記法を試してみよう!
Shohei Okada
自分たちのコードを Composer パッケージに分割して開発する
自分たちのコードを Composer パッケージに分割して開発する
Shohei Okada
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #shuuumai
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #shuuumai
Shohei Okada
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpconokinawa
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpconokinawa
Shohei Okada
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpcondo
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpcondo
Shohei Okada
Laravel でやってみるクリーンアーキテクチャ #phpconfuk
Laravel でやってみるクリーンアーキテクチャ #phpconfuk
Shohei Okada
エラー時にログに出力する情報と画面に表示する情報を分ける #LaravelTokyo
エラー時にログに出力する情報と画面に表示する情報を分ける #LaravelTokyo
Shohei Okada
スペシャリストとして組織をつくる、というキャリア
スペシャリストとして組織をつくる、というキャリア
Shohei Okada
PHP でも活用できる Makefile
PHP でも活用できる Makefile
Shohei Okada
はじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよ
はじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよ
Shohei Okada
Laravel × レイヤードアーキテクチャを実践して得られた知見と反省 / Practice of Laravel with layered archi...
Laravel × レイヤードアーキテクチャを実践して得られた知見と反省 / Practice of Laravel with layered archi...
Shohei Okada
働き方が大きく変わった 入社3年目のときのとあるエピソード
働き方が大きく変わった 入社3年目のときのとあるエピソード
Shohei Okada
Laravel で API バージョニングを実装するなら
Laravel で API バージョニングを実装するなら
Shohei Okada
Laravel における Blade 拡張のツラミ
Laravel における Blade 拡張のツラミ
Shohei Okada
2017 年度を振り返って ~アウトプット編~
2017 年度を振り返って ~アウトプット編~
Shohei Okada
Laravel × レイヤードアーキテクチャをやってみている話
Laravel × レイヤードアーキテクチャをやってみている話
Shohei Okada
Laravel 5.6 デフォルトの例外ハンドリング処理をまとめてみた
Laravel 5.6 デフォルトの例外ハンドリング処理をまとめてみた
Shohei Okada
チームで「きちんと」Laravel を使っていくための取り組み
チームで「きちんと」Laravel を使っていくための取り組み
Shohei Okada
プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話
Shohei Okada
Más de Shohei Okada
(20)
「登壇しているひとは偉い」という話
「登壇しているひとは偉い」という話
PHP 8.0 の新記法を試してみよう!
PHP 8.0 の新記法を試してみよう!
自分たちのコードを Composer パッケージに分割して開発する
自分たちのコードを Composer パッケージに分割して開発する
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #shuuumai
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #shuuumai
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpconokinawa
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpconokinawa
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpcondo
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpcondo
Laravel でやってみるクリーンアーキテクチャ #phpconfuk
Laravel でやってみるクリーンアーキテクチャ #phpconfuk
エラー時にログに出力する情報と画面に表示する情報を分ける #LaravelTokyo
エラー時にログに出力する情報と画面に表示する情報を分ける #LaravelTokyo
スペシャリストとして組織をつくる、というキャリア
スペシャリストとして組織をつくる、というキャリア
PHP でも活用できる Makefile
PHP でも活用できる Makefile
はじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよ
はじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよ
Laravel × レイヤードアーキテクチャを実践して得られた知見と反省 / Practice of Laravel with layered archi...
Laravel × レイヤードアーキテクチャを実践して得られた知見と反省 / Practice of Laravel with layered archi...
働き方が大きく変わった 入社3年目のときのとあるエピソード
働き方が大きく変わった 入社3年目のときのとあるエピソード
Laravel で API バージョニングを実装するなら
Laravel で API バージョニングを実装するなら
Laravel における Blade 拡張のツラミ
Laravel における Blade 拡張のツラミ
2017 年度を振り返って ~アウトプット編~
2017 年度を振り返って ~アウトプット編~
Laravel × レイヤードアーキテクチャをやってみている話
Laravel × レイヤードアーキテクチャをやってみている話
Laravel 5.6 デフォルトの例外ハンドリング処理をまとめてみた
Laravel 5.6 デフォルトの例外ハンドリング処理をまとめてみた
チームで「きちんと」Laravel を使っていくための取り組み
チームで「きちんと」Laravel を使っていくための取り組み
プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話
PHP-FPM の子プロセス制御方法と設定をおさらいしよう
1.
PHP-FPM の 子プロセス制御方法と 設定をおさらいしよう 2021/10/03 PHP
Conference Japan 2021 @okashoi
2.
PHP-FPM よくある構成 HTTP TCP or Unix
Socket (PHP-FPM) (Web Server)
3.
不適切な設定だと......? サーバ上に同居している プロセスが死亡 レスポンスが遅い
4.
子プロセス管理の機能を備えている (プロセス)プールという単位で管理する FPM とは FastCGI
Process Manager の略 $ systemctl status php-fpm ● php-fpm.service - The PHP FastCGI Process Manager Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled) Active: active (running) since 土 2021-09-25 06:53:44 UTC; 19s ago Main PID: 7794 (php-fpm) Status: "Processes active: 0, idle: 4, Requests: 0, slow: 0, Traffic: 0req/sec" CGroup: /system.slice/php-fpm.service ├─7794 php-fpm: master process (/etc/php-fpm.conf) ├─7795 php-fpm: pool www ├─7796 php-fpm: pool www ├─7797 php-fpm: pool www └─7798 php-fpm: pool www
5.
設定ファイル例 /etc |-- php-fpm.conf #
PHP-FPM 全体の設定 |-- php-fpm.d/ : |-- www.conf # プールごとの設定 : :
6.
設定ファイル例 /etc |-- php-fpm.conf #
PHP-FPM 全体の設定 |-- php-fpm.d/ : |-- www.conf # プールごとの設定 : : 設定項目 pm および pm.max_children について説明
7.
子プロセスの数は常に固定 pm = static HTTPリクエスト
待機中 待機中 処理中 待機中 子プロセス
8.
子プロセスの数は常に固定 pm = static HTTPリクエスト
待機中 待機中 処理中 処理中 子プロセス
9.
子プロセスの数は動的に増減(設定した最大値までの範囲で) pm = dynamic HTTPリクエスト
処理中 子プロセス 待機中
10.
子プロセスの数は動的に増減(設定した最大値までの範囲で) pm = dynamic HTTPリクエスト
処理中 子プロセス 処理中
11.
子プロセスの数は動的に増減(設定した最大値までの範囲で) pm = dynamic HTTPリクエスト
処理中 子プロセス 処理中
12.
子プロセスの数は動的に増減(設定した最大値までの範囲で) pm = dynamic HTTPリクエスト
処理中 子プロセス 待機中 処理中
13.
子プロセスの数は動的に増減(設定した最大値までの範囲で) pm = dynamic HTTPリクエスト
処理中 子プロセス 処理中 処理中
14.
HTTP リクエストが来たときに子プロセスを生成 pm =
ondemand HTTPリクエスト 子プロセス
15.
HTTP リクエストが来たときに子プロセスを生成 pm =
ondemand HTTPリクエスト 待機中 子プロセス
16.
HTTP リクエストが来たときに子プロセスを生成 pm =
ondemand HTTPリクエスト 子プロセス 処理中
17.
メモリ使用量とオーバヘッド時間のトレードオフ static • 常駐させるのでリクエストが来ていない間もメモリを使う dynamic, ondemand •
プロセスを新規に起動する際にオーバヘッドが発生 → 昨今の計算機事情では static でよいことが多いのでは(私見) 使い分け
18.
子プロセスの最大数(pm = static
では常駐する子プロセスの数) • あまり大きな値を設定すると OOM-Killer が暴れたりする pm.max_children
19.
CPU のスレッド数(たいていコア数の 2
倍)から様子を見て設定値を決め るのがよい • CPU 負荷が高いのか、通信やディスク I/O 等の待ちが長いのか • 同一サーバ上で動いている他のプロセスの利用状況 • 1 プロセスあたりのメモリ使用量は php.ini の memory_limit を参考に pm.max_children
20.
岡田 正平/おかしょい Twitter: @okashoi GitHub:
@okashoi 所属:株式会社ウィルゲート 登壇: 寄稿:
Descargar ahora