Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CakePHP3アプリを徹底チューニングしてみた
Search
Tsuyoshi Sadakata
June 12, 2017
Programming
5
2.8k
CakePHP3アプリを徹底チューニングしてみた
2017/06/10 @ PHPカンファレンス福岡 2017
Tsuyoshi Sadakata
June 12, 2017
Tweet
Share
Other Decks in Programming
See All in Programming
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
240
20260313 - Grafana & Friends Taipei #1 - Kubernetes v1.36 的開發雜記:那些困在 Alpha 加護病房太久的 Metrics
tico88612
0
150
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
430
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
400
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
750
エラーログのマスキングの仕組みづくりに役立ったASTの話
kumoichi
0
180
Ruby x Terminal
a_matsuda
7
590
TipKitTips
ktcryomm
0
160
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
330
Vuetify 3 → 4 何が変わった?差分と移行ポイント10分まとめ
koukimiura
0
120
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
150
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
Featured
See All Featured
KATA
mclloyd
PRO
35
15k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Embracing the Ebb and Flow
colly
88
5k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
110
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
390
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
140
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
350
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
The untapped power of vector embeddings
frankvandijk
2
1.6k
Designing for humans not robots
tammielis
254
26k
Transcript
貞方毅(@sadapon2008) PHPカンファレンス福岡2017
貞方 毅(さだかた つよし) 所属: 株式会社Fusic 技術開発部門 基盤ユニット
サーバサイドエンジニア Twitter/Github: @sadapon2008 PHPカンファレンス福岡2017 2
$ composer create-project --prefer-dist cakephp/app blog PHPカンファレンス福岡2017 3
$ composer create-project --prefer-dist cakephp/app blog パフォーマンスのチューニングしてますか? PHPカンファレンス福岡2017 4
CakePHP3公式チュートリアル: ブログチュートリアル シンプルなCRUD VPS 2CPU RAM 1GB想定のVMで負荷テスト
CentOS7+Apache 2.4+PHP7(mod_php)+MySQL5.7 一覧画面に負荷テストツールSiegeで計測 約 267 trans/sec PHPカンファレンス福岡2017 5
コアのキャッシュをファイルキャッシュからAPCuの メモリキャッシュに変更 config/app.php ページネーションのクエリにAPCuのクエリキャッ シュを適用 ※1
CakePHP3のクエリキャッシュはかなり癖あり ※2 Qiita「CakePHP3で簡単にFileCacheからfindで きるようにするプラグイン」 約 267 trans/sec Before PHPカンファレンス福岡2017 6
PHPカンファレンス福岡2017 コアのキャッシュをファイルキャッシュからAPCuの メモリキャッシュに変更 config/app.php ページネーションのクエリにAPCuのクエリキャッ シュを適用
※1 CakePHP3のクエリキャッシュはかなり癖あり ※2 Qiita「CakePHP3で簡単にFileCacheからfindで きるようにするプラグイン」 約 267 trans/sec Before 約 280 trans/sec After 7
ここでもメモリキャッシュのAPCuを活用 $ composer create-project dump-autoload --optimize --apcu 約 280
trans/sec Before PHPカンファレンス福岡2017 8
ここでもメモリキャッシュのAPCuを活用 $ composer create-project dump-autoload --optimize --apcu 約 280
trans/sec Before 約 329 trans/sec After PHPカンファレンス福岡2017 9
使用しないmod_*をコメントアウトしてメモリ節約 StartServers,MaxClients等を64に固定 約 329 trans/sec Before PHPカンファレンス福岡2017 10
使用しないmod_*をコメントアウトしてメモリ節約 StartServers,MaxClients等を64に固定 約 329 trans/sec Before 約 355
trans/sec After PHPカンファレンス福岡2017 11
約 267 trans/sec 約 280 trans/sec 約 329 trans/sec 約
355 trans/sec PHPカンファレンス福岡2017 12
約 267 trans/sec 約 280 trans/sec 約 329 trans/sec 約
355 trans/sec 約 33% UP PHPカンファレンス福岡2017 13
約 267 trans/sec 約 280 trans/sec 約 329 trans/sec 約
355 trans/sec 約 33% UP PHPカンファレンス福岡2017 14 チューニングネタ是非共有してください!
ReactPHP+CakePHP3 PSR-7を活用 Application::bootstrap()をリクエスト間で共有し て高速化できるかも? PHPカンファレンス福岡2017 15
PHPカンファレンス福岡2017 16