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
ロリポップ!で目指す PHPのためのセキュリティと性能要件を 同時に満たすサーバホスティング技...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
MATSUMOTO Ryosuke
PRO
May 21, 2016
Technology
6
11k
ロリポップ!で目指す PHPのためのセキュリティと性能要件を 同時に満たすサーバホスティング技術 / loli-next
PHP実行基盤の高速化・セキュリティ・省メモリ・ペパボKernel
MATSUMOTO Ryosuke
PRO
May 21, 2016
Tweet
Share
More Decks by MATSUMOTO Ryosuke
See All by MATSUMOTO Ryosuke
問いを起点に、社会と共鳴する知を育む場へ
matsumoto_r
PRO
0
760
さくらインターネット研究所 アップデート2025年
matsumoto_r
PRO
0
830
リモートワークにおけるパッシブ疲労
matsumoto_r
PRO
6
5.4k
エンジニアのキャリアパスはどう描く? まつもとりーさんと考える後悔しないキャリア選択
matsumoto_r
PRO
10
2.4k
まつもとりーのこれまでとCOGNANOのこれから
matsumoto_r
PRO
0
350
2022年の研究所の評価制度振り返りと今後
matsumoto_r
PRO
0
840
VUCAワールドから紐解く組織や評価制度の変遷と再設計
matsumoto_r
PRO
9
26k
コンテナの研究開発から学ぶLinuxの要素技術
matsumoto_r
PRO
2
1.6k
開発者体験をさらに向上させる 事業と研究との連携
matsumoto_r
PRO
2
2.5k
Other Decks in Technology
See All in Technology
配列に見る bash と zsh の違い
kazzpapa3
3
160
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
420
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
450
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
150
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
450
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
1.9k
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
670
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
AI駆動PjMの理想像 と現在地 -実践例を添えて-
masahiro_okamura
1
120
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
170
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Designing for humans not robots
tammielis
254
26k
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Darren the Foodie - Storyboard
khoart
PRO
2
2.4k
The untapped power of vector embeddings
frankvandijk
1
1.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
For a Future-Friendly Web
brad_frost
182
10k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
230
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
93
The browser strikes back
jonoalderson
0
380
How GitHub (no longer) Works
holman
316
140k
Transcript
1)1࣮ߦج൫ͷߴԽɾηΩϡϦςΟɾলϝϞϦɾϖύϘ,FSOFM 2016/05/21 PHPΧϯϑΝϨϯεԬ2016 ϩϦϙοϓʂͰࢦ͢ 1)1ͷͨΊͷηΩϡϦςΟͱੑೳཁ݅Λ ಉ࣌ʹຬͨ͢αʔόϗεςΟϯάٕज़ GMOϖύϘגࣜձࣾ γχΞɾϓϦϯγύϧΤϯδχΞ MATSUMOTO, Ryosuke
@matsumotory
ࣗݾհ (.0ϖύϘגࣜձٕࣾज़ج൫νʔϜ γχΞɾϓϦϯγύϧΤϯδχΞ দຊ྄հ!NBUTVNPUPSZ ઐΠϯλʔωοτͱӡ༻ٕज़
શࣾతʹ৽ٕज़ͷԠ༻৽نݚڀɾ։ൃΛ୲ IUUQSFTFBSDINBUTVNPUPSKQ
࣍ ߴूੵϗεςΟϯάαʔϏε 1)1࣮ߦج൫ͷηΩϡϦςΟͱੑೳͷཱ྆ 1)1࣮ߦج൫ͷϝϞϦޮԽ 1)1࣮ߦج൫҆ఆԽͷͨΊʹϖύϘ,FSOFMར༻
·ͱΊ
ߴूੵϗεςΟϯάαʔϏε
ϗεςΟϯάαʔϏεͷಛ ࣄۀऀ͓٬༷ͷ8FCίϯςϯπΛ੍ޚͰ͖ͳ͍ ϛυϧΣΞɾ04Ͱ੍ޚ͢Δඞཁ͕͋Δ ڞ༗ͷ߹Ϧιʔε੍ޚηΩϡϦςΟ͕ॏཁ ಛʹੑೳͱ͍͔ʹόϥϯεΛͱΔ͔
ฐࣾͰߴूੵͷڞ༗ϗεςΟϯάʹ߆͍ͬͯΔ
ͳͥߴूੵʹͩ͜ΘΔͷ͔
None
None
ݸਓ͚αΠτத৺ ສαΠτΛӡӦ ֶੜओ්ͩͬͨΓݸਓ͕झຯͰ͏༻్ ϋʔυΣΞʹͲΕ͚ͩߴूੵͰ͖Δ͔ʹઓ ͱʹ͔҆͘͘ੑೳͷྑ͍ͷΛఏڙ͍ͨ͠
ιϑτΣΞʹΑΔٕज़ྗʹΑͬͯղܾՄೳ
8FCαʔόͷΞʔΩςΫνϟ
ϓϩηεͱऩ༰αΠτ ϝϞϦ(#Ͱ$16ίΞݸ αΠτΛສ͔ΒສαΠτͰऩ༰ ϓϩηε͕αΠτʹґଘ͠ͳ͍Α͏ͳߏ ෳαΠτڞ༗ͷIUUQEϓϩηε͕ϦΫΤετ͞Εͨϗετ ໊͔ΒಈతʹίϯςϯπΛݕग़ͯ͠ॲཧʢ7JSUVBM)PTU˞
ʣ ˞IUUQIUUQEBQBDIFPSHEPDTDVSSFOUFOWIPTUT
IUUQE ߴूੵͷͨΊͷΞʔΩςΫνϟ IUUQEϓϩηεݸºສສϓϩηεʢϢʔβݸผʹϓϩηεىಈʣ IUUQEϓϩηεݸ͙Β͍ͷԾϗετͰશϢʔβڞ༗ Ϣʔβ" IUUQE Ϣʔβ# IUUQE
Ϣʔβ$ IUUQE Ϣʔβ" Ϣʔβ# Ϣʔβ$ ޮྑ͘ϦιʔεΛ͑Δ ىಈʹඞཁ ͳϦιʔε ىಈʹඞཁ ͳϦιʔε ىಈʹඞཁ ͳϦιʔε ىಈʹඞཁͳϦιʔε 04 04
ߴूੵͷͨΊͷ ΞʔΩςΫνϟͷ՝
ηΩϡϦςΟͱੑೳͷཱ྆ ϗεςΟϯάͷಛੑ্Ϣʔβຖʹݫີʹݖݶ ߴूੵڥͷ1)1ͷݖݶͷੑೳͷޮԽ ୯ҰͷBQBDIFݖݶͰىಈ͍ͯ͠ΔϓϩηεͰηΩϡϦ ςΟͱੑೳΛཱ͍͔྆ͭͭ͠ʹదʹݖݶ͢Δ͔
ֶज़ݚڀͷΞϓϩʔνͰ ৽ٕज़Λ։ൃɾಋೖ
None
1)1࣮ߦج൫ͷ ηΩϡϦςΟͱੑೳͷཱ྆
ߴूੵʹ͓͚Δ1)1ͷݖݶ TV&9&$ϦΫΤετຖʹϓϩηεੜഁغ͕ඞཁͰ͍ 'BTU$(*ϢʔβʹԠͯ͡ϓϩηεͱϝϞϦྔ૿Ճ NPE@SVJETVJEੑೳɾηΩϡϦςΟ໘Ͱ͋Γ˞ ݖݶͷͨΊͷίετΛͲ͏Լ͛Δ͔
େنߴूੵͷͨΊͷݖݶΞʔΩςΫνϟݕ౼ ˞দຊ྄հ Ԭ෦णஉ εϨου୯ҐͰݖݶΛߦ͏8FCαʔόͷΞΫηε੍ޚΞʔΩςΫνϟ ిࢠใ௨৴ֶձจࢽ 7PM+# /P QQ 0DU
NPE@QSPDFTT@TFDVSJUZ "QBDIFͷεϨου୯ҐͰݖݶΞʔΩςΫνϟ˞ NPE@QIQͳͲͷݖݶΛߴʹߦ͑Δ ϦΫΤετ࣌ͷݖݶͷίετΛݮ ϓϩηεੜഁغ͔ΒεϨουੜഁغ
˞দຊ྄հ Ԭ෦णஉ εϨου୯ҐͰݖݶΛߦ͏8FCαʔόͷΞΫηε੍ޚΞʔΩςΫνϟ ిࢠใ௨৴ֶձจࢽ 7PM+# /P QQ 0DU IUUQTHJUIVCDPNNBUTVNPUPSNPE@QSPDFTT@TFDVSJUZ
$(*QSPDFTT PXOFSVTFS $(*QSPDFTT PXOFSSPPU QIQDHJJOEFYQIQ PXOFSVTFS $(*QSPDFTT PXOFSVTFS TFUVJE TFUHJE
ʜ GPSL FYFDWF TVFYFDQSPHSBN TFUVJESPPU UFSNJOBUFQSPDFTT FYFDWF 1BSFOUIUUQEQSPDFTT PXOFSSPPU $IJMEIUUQEQSPDFTT PXOFSBQBDIF ˞$(* TV&9&$NPEFM
εϨουͱ-JOVY$BQBCJMJUZ ϓϩηε͔ΒݖݶͷDBQBCJMJUZ DBQ ͷΈΛҾ͖ܧ͙ ಈతίϯςϯπ࣮ߦલʹεϨουΛ࡞Δ εϨου্ͰݖݶมߋޙʹDBQΛམͱͯ͠ίϯςϯπ࣮ߦ
7JSUVBMJOH˞ Λͬͯɺ"QBDIFͦͷͷΛ֤छಛݖΛམͱ ͭͭ͠3FBEPOMZͷCJOEϚϯτͱඞཁϑΝΠϧͱϦιʔ ε੍ݶԽͷDISPPUڥʹͯىಈͤ͞Δ͓ͯ͘ͱΑΓڧݻ ˞IUUQTHJUIVCDPNNBUTVNPUPSNSVCZWJSUVBMJOH
1BSFOUIUUQEQSPDFTT PXOFSSPPU $IJMEIUUQEQSPDFTT PXOFSBQBDIF NQTUISFBE PXOFSVTFS NQTUISFBE PXOFSBQBDIF JOEFYQIQ PXOFSVTFS
TFUVJE TFUHJE ʜ VOTFUDBQT DSFBUFUISFBE TFUDBQT EFTUSPZUISFBE QBSTF SVO QSDUM TFUVJETFUHJEDBQT NQTUISFBE PXOFSVTFS ˞%40 NPE@QSPDFTT@TFDVSJUZNPEFM 7JSUVBMJOH&OWJSPONFOU
γεςϜίʔϧͷ QIQJOGP ͷΞΫηεΛTUSBDF͔Βղੳ˞ $(* TV&9&$ճ NPE@QIQ
NPE@QSPDFTT@TFDVSJUZճ ΦʔόʔϔουʹͳͬͯΔγεςϜίʔϧ˞ DMPOF PQFO DMPTF FYFDWF ͳͲͳͲ ˞TUSBDFDGQ1*% ˞DBUDHJMPHcHSFQWFQPMM@XBJUcHSFQWGVUFYcQFSMBOF <aEa> QSJOU@JG
None
ͦͷଞͷϝϦοτ͋ͬͨ ෛՙ͕େ෯ʹݮʢ1)1ར༻ऀ͕ଟʣ ϩʔυΞϕϨʔδʹͳΔΑ͏ͳΞΫηε͕ҎԼ ࠓ$(*ͱ%40ͷڞଘ͍ͯ͠Δঢ়ଶ %40ઐ༻ʹ͢Εͬͱऩ༰ޮ্͕͕Δ
ಋೖલޙͷ$16༻ྔൺֱ ҰͷΞΫηεͲͪΒͷαʔόສʢαʔϏεશମͰेԯʣ $(*ʴTV&9&$ %40ʴNPE@QSPDFTT@TFDVSJUZ ˙TZTUFN ˙VTFS ˙JEMF
͞Βʹ҆͘ɺ͞Βʹߴੑೳ
1)1࣮ߦج൫ͷϝϞϦޮԽ
ϩϦϙοϓʂߴूੵ ͱʹ͔͘ϓϩηεΛઅ͍ͨ͠ ͱʹ͔͘ϝϞϦΛઅ͍ͨ͠ NPE@QIQ݁ߏϝϞϦΛ৯͏ ಛʹϓϩηεͷ13*7"5&ͳϝϞϦઅ͍ͨ͠
NFNPSZ@MJNJUʹΑΔ੍ݶ NFNPSZ@MJNJUͰ13*7"5&ϝϞϦ੍ݶͰ͖Δ͕ʜ 1)1࣮ߦޙʹ13*7"5&ϝϞϦ͕ཷ·Δͷ͕ NFNPSZ@MJNJUΛԼ͛Δͱ͓٬༷͕໎ NFNPSZ@MJNJUेʹ͋Δ͕࣮ߦޙʹ͍ͬͯ ͳ͍13*7"5&ϝϞϦΛݮΒ͢ʹͲ͏͢ΕΑ͍͔
;&/%@..@4&(@4*;& ϝϞϦϒϩοΫΛׂΓͯΔࡍͷηάϝϯταΠζ ॲཧޙʹϝϞϦ͕ແବʹΔύλʔϯ͕͋Δ ׂͯྔΛνϡʔχϯάͯ͠Βͳ͍Α͏ʹͰ͖Δ ͕݅߹͑େ͖ͳޮՌ͕ಘΒΕΔͣ
ίʔυΛݟΔݶΓڥมͰ੍ޚՄೳ
None
NPE@QIQىಈ࣌ PID VSZ RSS PRIVATE SHARED[KB] 10280 51188 49824 128
49696 ( 99%) 10281 51188 49824 124 49700 ( 99%) 10282 51188 49824 124 49700 ( 99%) 10283 51188 49824 124 49700 ( 99%) 10284 51188 49824 124 49700 ( 99%) 10285 51188 49824 124 49700 ( 99%) 10286 51188 49824 124 49700 ( 99%) 10287 51188 49824 124 49700 ( 99%) 10288 51188 49824 124 49700 ( 99%) IUUQTHJUIVCDPNIJSPTFTIBSFENFNPSZTJ[F
σϑΥϧτʢ81ΞΫηεޙʣ PID VSZ RSS PRIVATE SHARED[KB] 10281 125628 67372 18428
48944 ( 72%) 10282 125628 67368 18400 48968 ( 72%) 10286 125628 67368 18400 48968 ( 72%) 10291 125628 67368 18400 48968 ( 72%) 10293 125628 67368 18400 48968 ( 72%) 10294 125628 67368 18400 48968 ( 72%) 10300 125628 67368 18400 48968 ( 72%) 10301 125628 67368 18400 48968 ( 72%) 10303 125628 67368 18400 48968 ( 72%) 8PSE1SFTTͷॲཧޙͷ13*7"5&ͷϝϞϦ֬อྔ.#
νϡʔχϯάޙʢ81ΞΫηεޙʣ PID VSZ RSS PRIVATE SHARED[KB] 20908 129212 55076 6108
48968 ( 88%) 20909 129212 55076 6108 48968 ( 88%) 20910 129212 55076 6108 48968 ( 88%) 20911 129212 55076 6108 48968 ( 88%) 20912 129212 55076 6108 48968 ( 88%) 20913 129212 55076 6108 48968 ( 88%) 20914 129212 55076 6108 48968 ( 88%) 20915 129212 55076 6108 48968 ( 88%) 20916 129212 55076 6108 48968 ( 88%) ϓϩηεͰ13*7"5&Λ.#ݮɺϓϩηεͩͱ(#ͷݮ
͓٬༷ͷϝϞϦΛ੍ݶ͢Δ͜ ͱͳ͘1)1ଆͰઅ͕Ͱ͖ͨ
1)1࣮ߦج൫҆ఆԽͷͨΊ ϖύϘ,FSOFMར༻
1)1͕LFSOFMΛ͑ͨ
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME
COMMAND apache 10241 55636314 0.0 0 0 ? R 12:36 21115121:16 [httpd]
ϖύϘ,FSOFM ,FSOFMܥͷDHSPVQͰ,FSOFMύχοΫϋϯάසൃ $16ສͷQIQͷLFSOFMεϨου ͷ༷ʹݟ͑Δʣ ࡴͤͳ͍ɺIBMUͰ͖ͳ͍ɺϋʔυϦηοτ͢Δ͔͠ͳ͍ $FOU04ʹ,FSOFMܥϕʔεͷϖύϘ,FSOFMΛಋೖ
.BDͰಈ͘,FSOFMͷSQNϏϧυγεςϜ։ൃ IUUQTHJUIVCDPNNBUTVNPUPSLFSOFMCVJMETZTUFNGPSDFOUPT
ಛఆͷ1)1͕ͨ͠Γ੬ऑͰ͋ͬͯ ଞϗετʹඃ͕Ͱͳ͍Α͏ʹ͖ͪΜͱ੍ޚ
·ͱΊ
ͥͻϩϦϙοϓʂͷ1)1Λ ͬͯԼ͍͞ IUUQTMPMJQPQKQ
ϖύϘɾͯͳٕज़େձ։࠵ ओʹ8FCαʔϏεاۀʹڵຯͷ͋Δֶੜ͚ ژͱԬͰि࿈ଓͰ։࠵ʢͱʣ ୈҰճ8FCαʔϏεͷج൫ٕज़ ৄ͘͠ҎԼͷ63-Ͱ IUUQEFWFMPQFSIBUFOBTUBGGDPNFOUSZ