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
ホントに速い? nginx + php-fpm
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yusuke Ando
July 31, 2012
Programming
920
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ホントに速い? nginx + php-fpm
第61回PHP勉強会で発表した資料です。
Yusuke Ando
July 31, 2012
More Decks by Yusuke Ando
See All by Yusuke Ando
CakePHP3でアプリ開発
yandod
1
430
Shimokita.Unity パーティクルでエフェクト
yandod
0
880
CakePHP3の明るい未来
yandod
1
300
Testing your app with Selenium on Travis CI
yandod
8
3.3k
Testing your app with Selenium on Travis CI
yandod
0
200
Inputで入力を扱う
yandod
0
740
Detonatorで爆発させる勉強会をした報告
yandod
0
2.5k
Mecanimでアニメーション - Shimokita.Unity
yandod
0
810
パリの街をUnityで駆ける
yandod
1
3.5k
Other Decks in Programming
See All in Programming
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
240
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
380
楽しそうなつよつよエンジニアと目が死んでる僕/A brilliant engineer having a blast, and dead-eyed me.
3l4l5
2
230
バグを直したら useEffect が消えた
colorful12
3
690
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
360
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
170
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
MySQLとPostgreSQLって何が違うの?
akagami
0
130
引き算の組織 ― アウトカムとAIに全振りするために辞めたこと ― / Organization by Subtraction
hirokiyamamoto14
PRO
0
280
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
3
1.6k
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.9k
仕様駆動開発の消費期限
watany
20
8.9k
Featured
See All Featured
First, design no harm
axbom
PRO
2
1.3k
Facilitating Awesome Meetings
lara
57
7.1k
sira's awesome portfolio website redesign presentation
elsirapls
0
340
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
280
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
220
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
470
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
480
Transcript
OHJOY QIQGQN:VTVLF"OEP !ZBOEP OHJOY QIQGQN ϗϯτʹ͍ʁ OHJOY QIQGQN:VTVLF"OEP !ZBOEP
OHJOY QIQGQNYusuke Ando (@yando) ςΩετ
OHJOY QIQGQNYusuke Ando (@yando)
OHJOY QIQGQNYusuke Ando (@yando)
OHJOY QIQGQN:VTVLF"OEP !ZBOEP http://bit.ly/candybts
OHJOY QIQGQN:VTVLF"OEP !ZBOEP IJOFUUFS ιʔγϟϧՎ ΥʔϧͰڞ༗
OHJOY QIQGQN:VTVLF"OEP !ZBOEP ͷ OHJOY
OHJOY QIQGQN:VTVLF"OEP !ZBOEP OHJOY͕͍ Β͍͠
OHJOY QIQGQN:VTVLF"OEP !ZBOEP Կނʁ
OHJOY QIQGQN:VTVLF"OEP !ZBOEP ͳΒൺͯΈΑ͏
OHJOY QIQGQN:VTVLF"OEP !ZBOEP ຊͷϝχϡʔ 1)1ͷಈ͘Έ NPE@QIQ "1$ OHJOY QIQGQN
OHJOY QIQGQN:VTVLF"OEP !ZBOEP 1)1ͷಈ͘Έ w8FCαʔό "QBDIF ɹ63-ΛݩʹϦιʔεΛಛఆ w1)1 ɹࢦఆ͞Εͨ1)1εΫϦϓτΛղੳ w1)1֦ுϞδϡʔϧ
$ݴޠ ɹ1)1͔ΒඞཁʹԠͯ͡ݺͼग़͞ΕΔ ݴޠͱͯ̎͠൪ͷΈ͕1)1
OHJOY QIQGQN:VTVLF"OEP !ZBOEP )5.-Λදࣔ͢ΔྲྀΕ 8FCαʔό ެ։σΟϨΫτϦ ϑΝΠϧΛ୳ͯ͠ฦ͢ͷΈ IUUQEDPOG ެ։σΟϨΫτϦ ͲͷσΟϨΫτϦΛެ։͢
Δ͔͕ઃఆ͞Ε͍ͯΔ
OHJOY QIQGQN:VTVLF"OEP !ZBOEP 1)1͕ಈ࡞͢ΔྲྀΕ 8FCαʔό 1)1 εΫϦϓτ ෳͷϓϩάϥϜ͕࿈ܞ 1)1 ֦ுϞδϡʔϧ
ࣗͰॻ͘ͷେ͜Ε
OHJOY QIQGQN:VTVLF"OEP !ZBOEP NPE@QIQ w"QBDIF͔Β1)1Λಈ࡞ͤ͞Δ w1)1ͷιʔεͱ"QBDIF͕ඞཁ ग़དྷ্͕ͬͨNPE@QIQBQBDIF͔Β ༗ޮʹ͢Δ # yum
install httpd httpd-devel $ configure --with-apxs2 $ make # make install
OHJOY QIQGQN:VTVLF"OEP !ZBOEP IUUQEDPOG w"QBDIFͷઃఆϑΝΠϧʹԼهΛه QIQBQBDIFͷϓϩηεʹΈࠐΉ LoadModule php5_module /usr/lib64/httpd/ modules/libphp5.so
<FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
OHJOY QIQGQN:VTVLF"OEP !ZBOEP ࠓճͷϕϯνϚʔΫ w)FMMP8PSME BCDO wKQFHը૾ BCDO w8PSE1SFTTͷ)5.-෦ DO
w8PSE1SFTTͷϖʔδશମ w%#ઃఆͳͲσϑΥϧτ ͋·Γνϡʔχϯά͠ͳ͍ঢ়ଶͷޮՌ
OHJOY QIQGQN:VTVLF"OEP !ZBOEP NPE@QIQ w)FMMP8PSMEST wKQHը૾ST w8PSE1SFTTͷ)5.-෦ST w8PSE1SFTTͷϖʔδશମNT
OHJOY QIQGQN:VTVLF"OEP !ZBOEP "1$ w1)1εΫϦϓτͷղੳ݁ՌΛอଘ wղੳൈ͖Ͱ;FOE&OHJOF͕Քಇ w8PSE1SFTTͳΒഒ͘Β͍͘ wεΫϦϓτ͕ଟ͍ෳࡶͳίʔυʹޮ͘ w,FZ7BMVF4UPSFͱͯ͑͠Δ #
pecl install apc
OHJOY QIQGQN:VTVLF"OEP !ZBOEP http://vipinkrsahu.blogspot.jp/2010/06/apc-vs-memcache- in-joomla-and-magento.html
OHJOY QIQGQN:VTVLF"OEP !ZBOEP NPE@QIQ "1$ w)FMMP8PSMEST wKQHը૾ST w8PSE1SFTTͷ)5.-෦ST w8PSE1SFTTͷϖʔδશମNT
OHJOY QIQGQN:VTVLF"OEP !ZBOEP "1$͕ΧφϦޮ͍ͯΔ
OHJOY QIQGQN:VTVLF"OEP !ZBOEP QIQGQN wQIQΛσʔϞϯͱͯ͠'BTU$(*Խ wPQDPEFͳͲͷΩϟογϡͷ੍ޚͳͲ w4"1*ͷҰछGSPNQIQ QIQGQNΛ͏ͱखܰʹOHJOY࿈ܞ $ configure
--enable-fpm $ make # make install
OHJOY QIQGQN:VTVLF"OEP !ZBOEP BQBDIF NPE@QIQ BQBDIF ެ։σΟϨΫτϦ 1)1͕ෆཁͳ࣌QIQͷό ΠφϦࠐΈͷBQBDIF͕ಈ࡞ NPE@QIQ
OHJOY QIQGQN:VTVLF"OEP !ZBOEP OHJOY QIQGQN OHJOY ެ։σΟϨΫτϦ ϑΝΠϧΛ୳ͯ͠ฦ͢ͷΈ QIQGQN QIQ
ಠཱͨ͠σʔϞϯͰ 1)1ʹઐ೦
OHJOY QIQGQN:VTVLF"OEP !ZBOEP ը૾ͳͲ͕ଟ͍߹ OHJOYলϝϞϦ BQBDIF NPE@QIQ BQBDIF NPE@QIQ BQBDIF
NPE@QIQ BQBDIF NPE@QIQ BQBDIF NPE@QIQ OHJOY QIQGQN OHJOY OHJOY OHJOY OHJOY
OHJOY QIQGQN:VTVLF"OEP !ZBOEP OHJOYͷಋೖ FUDZVNSFQPTEOHJOYSFQPʹՃ [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/6/x86_64/ gpgcheck=0
enabled=1 # yum install nginx
OHJOY QIQGQN:VTVLF"OEP !ZBOEP FUDOHJOYDPOGEEFGBVMUDPOG location ~ \.php$ { root html;
fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi_params; } # cp -f /usr/local/etc/php-fpm.conf.default /usr/local/ etc/php-fpm.conf # cp -f sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm # chmod 755 /etc/init.d/php-fpm # mkdir /var/log/php-fpm # chown -R nginx:nginx /var/log/php-fpm
OHJOY QIQGQN:VTVLF"OEP !ZBOEP ৭ʑઃఆ wFUDOHJOYDPOGEEFGBVMUDPOG wGBTUDHJQBSBN wVTSMPDBMFUDQIQGQNDPOG wQJEVTFSHSPVQ # service
nginx start # service php-fpm start
OHJOY QIQGQN:VTVLF"OEP !ZBOEP OHJOY QIQGQN w)FMMP8PSMEST wKQHը૾ST w8PSE1SFTTͷ)5.-෦ST w8PSE1SFTTͷϖʔδશମNT
OHJOY QIQGQN:VTVLF"OEP !ZBOEP OHJOY QIQGQN "1$ w)FMMP8PSMEST wKQHը૾ST w8PSE1SFTTͷ)5.-෦ST w8PSE1SFTTͷϖʔδશମNT
OHJOY QIQGQN:VTVLF"OEP !ZBOEP
OHJOY QIQGQN:VTVLF"OEP !ZBOEP αΫαΫ ฒΈཚΕͯΔ
OHJOY QIQGQN:VTVLF"OEP !ZBOEP ·ͱΊ w"1$ͷ͘͢͝ޮ͘ w1)1ͷಈ࡞ࣗମʹେࠩແ͍ wΑΓࡉ͔͍ϓϩηεઃఆͷ༨ wը૾ͳͲͷॲཧͰOHJOYʹ༨༟ ˠίϯςϯπͷද͕͍ࣔʹମײ ಈ࡞ݪཧʹݟ߹ͬͨޮՌ