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
Webサーバ拡張における排他制御のパフォーマンスチューニング /performance_tuning_of_exclusive_control in_web_server extension
Search
Takuma Kume
November 08, 2017
Technology
7
2.3k
Webサーバ拡張における排他制御のパフォーマンスチューニング /performance_tuning_of_exclusive_control in_web_server extension
第10回ペパボテックカンファレンス~インフラエンジニアがもっとおもしろくできる!~
https://pepabo.connpass.com/event/69866/
Takuma Kume
November 08, 2017
Tweet
Share
More Decks by Takuma Kume
See All by Takuma Kume
ロリポップ! for Gamersの立ち上げ/lolipop for gamers launch
takumakume
0
960
ホモグラフドメインを検出してみた/detect homograph domain
takumakume
0
340
ソフトウェアの継続的アップデートをコンテナ化によって加速させる/Accelerate continuous software updates with containerization
takumakume
0
4.4k
KubernetesにおけるSBOMを利用した脆弱性管理/Vulnerability_Management_with_SBOM_in_Kubernetes
takumakume
0
1.6k
ホスティング事業におけるSREの取り組みとSREの面白さ/SRE Efforts in the Hosting Business and the Interest of SRE
takumakume
1
1.4k
GitOpsで実現するPull Request毎のプレビュー環境/Preview environment for each Pull Request by GitOps
takumakume
0
1.3k
Goでkubernetes operatorを実装してアプリのプレビュー環境を作る/go-kubernetes-operator
takumakume
0
140
クラウドネイティブな開発環境への移行/Move to the cloud native development environment
takumakume
1
540
200万ドメインを超えるレンタルサーバのコンテンツキャッシュ機能の裏側/2_million_more_than_the_domain_the_back_of_the_rental_server_content_cache
takumakume
10
2.7k
Other Decks in Technology
See All in Technology
楽しくGoを学び合う、LayerXの勉強会文化 / LayerX's study culture of having fun and learning Go together
ar_tama
2
350
20240724_cm_odyssey_hibiyatech
hiashisan
0
110
What is DRE? - Road to SRE NEXT@広島
chanyou0311
3
630
Git 研修 Advanced【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
200
[NIKKEI Tech Talk]Bias for Action!! 実践から学ぶための仕組とコミュニティ / Community for Practice and Learning
kanamasa
0
280
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
Azure OpenAI Service Dev Day / LLMでできる!使える!生成AIエージェント
masahiro_nishimi
3
800
DevIO2024_レガシー運用からの脱却 -クラウド活用の実践事例とベストプラクティス-
jun2882
0
210
サーバーレスAPI(API Gateway+Lambda)とNext.jsで 個人ブログを作ろう!
shuntaka
PRO
0
560
Classmethod Odyssey 登壇資料
yamahiro
0
390
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.4k
スレットハンティングについて知っておきたいこと
hacket
0
130
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
124
16k
Faster Mobile Websites
deanohume
303
30k
Designing for humans not robots
tammielis
247
25k
Building Adaptive Systems
keathley
34
2k
Embracing the Ebb and Flow
colly
81
4.3k
RailsConf 2023
tenderlove
16
720
The MySQL Ecosystem @ GitHub 2015
samlambert
248
12k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.9k
A designer walks into a library…
pauljervisheath
201
24k
The Invisible Side of Design
smashingmag
294
50k
Rails Girls Zürich Keynote
gr2m
93
13k
Transcript
ٱถഅ(.01&1"#0JOD ୈճϖύϘςοΫΧϯϑΝϨϯε 8FCαʔό֦ுʹ͓͚Δഉଞ੍ޚͷ ύϑΥʔϚϯενϡʔχϯά
ٱถഅ!UBLVNBLVNF Ԭࢧࣾ ϗεςΟϯάࣄۀ෦ΠϯϑϥΤϯδχΞ ߴଔʙؒΠϯλʔωοταʔϏεϓϩόΠμͰۈ ɾ؆୯ͳωοτϫʔΫɺαʔόͷߏங ɾϓϦηʔϧεΤϯδχΞ ݄͔ΒϖύϘʹೖࣾ ɾΠϯϑϥΤϯδχΞ झຯɿڕΓ
Γ෦͋ΔΑʂʂʂ
None
ֹ݄ԁ͔Βར༻Ͱ͖Δʂ ສαΠτҎ্ӡ༻தʂ ඵؒສઍϦΫΤετΛॲཧʂ
࣍ ɾϩϦϙοϓʂͷ8FCαʔόߏͱػೳ֦ுͷྫ ɾ8FCαʔόͷػೳ֦ுʹ͓͚Δഉଞ੍ޚͷඞཁੑ ɾഉଞ੍ޚͷύϑΥʔϚϯενϡʔχϯάͷϙΠϯτ ɾ·ͱΊ
ϩϦϙοϓʂͷ 8FCαʔόߏͱػೳ֦ுͷྫ
ϩϦϙοϓʂͷ8FCαʔόߏ ϦόʔεϓϩΩγ 8FCαʔό
ϩϦϙοϓʂͷ8FCαʔόߏ ϦόʔεϓϩΩγ 8FCαʔό ʴ ngx_mruby ʴ mod_mruby
ϩϦϙοϓʂͷ8FCαʔόߏ ϦόʔεϓϩΩγ 8FCαʔό ʴ ngx_mruby ʴ mod_mruby ฐࣾͷ!NBUTVNPUPSZ͕։ൃ͍ͯ͠Δ OHJOYIUUQEΛNSVCZΛ੍ͬͯޚͰ͖Δ
NSVCZͱɿলϝϞϦͷΈࠐΈ͚ͷ3VCZ ௨ৗOHJOYIUUQEͷػೳ֦ுΛ͢Δ߹ $ݴޠͰϞδϡʔϧΛ։ൃ͢Δඞཁ͕͋ͬͨ ϓϩηεͷىಈ࣌ɺΞΫηεॲཧ࣌ͳͲɺ༷ʑ ͳλΠϛϯάͰNSVCZͷεΫϦϓτΛ࣮ߦ͢Δ ػೳ͕͋Δ ngx_mruby/mod_mruby
ϩϦϙοϓʂͷ8FCαʔόߏ 8FCαʔό ʴ ngx_mruby ʴ mod_mruby ϦόʔεϓϩΩγ υϝΠϯʹԠͨ͡8FCαʔόͷબ υϝΠϯʹԠͨ͡44-ূ໌ॻͷબ
߈ܸ͔Βͷޚ Webαʔό υϝΠϯΞΧϯτຖͷಉ࣌ଓͷ੍ޚ DHSPVQʹΑΔಈతͳ$16੍ޚ
ϩϦϙοϓʂͷ8FCαʔόߏ 8FCαʔό ʴ ngx_mruby ʴ mod_mruby ϦόʔεϓϩΩγ υϝΠϯʹԠͨ͡8FCαʔόͷબ υϝΠϯʹԠͨ͡44-ূ໌ॻͷબ
߈ܸ͔Βͷޚ Webαʔό Ϧιʔεཧ υϝΠϯຖͷಉ࣌ଓͷ੍ޚ DHSPVQʹΑΔಈతͳ$16੍ޚ ϖύϘͰɺΜʹ8FCαʔόͷ ػೳ֦ு͕ߦΘΕ͍ͯΔʂ
8FCαʔόػೳ֦ுʹ͓͚Δ ഉଞ੍ޚͷඞཁੑΛ ࣮ྫΛݩʹઆ໌͍͖ͯ͠·͢ʂ
ʲྫʳ ΞΫηεΛ,74Λͬͯ Χϯτ͢Δ࣮
,74 ΞΫηε ΞΫηε ΞΫηε ΧϯτΞοϓॲཧ ,FZ 7BMVF DPVOUFS XPSLFS
XPSLFS XPSLFS
,74 ΞΫηε ΞΫηε ΞΫηε ΧϯτΞοϓॲཧ ,FZ 7BMVF DPVOUFS XPSLFS
XPSLFS XPSLFS ͨͩɺΧϯτΞοϓ͢Δ͚ͩͰ ਖ਼ৗͳʹͳΒͳ͍ɻ
ϨʔείϯσΟγϣϯ ʢڝ߹ঢ়ଶʣ
ΞΫηε ΞΫηε ΞΫηε ΧϯτΞοϓॲཧ ,FZ 7BMVF DPVOUFS XPSLFS XPSLFS
,74 XPSLFS ΧϯτΞοϓॲཧ
ΧϯτΞοϓॲཧ ,FZ 7BMVF DPVOUFS ,74 XPSLFS
ΧϯτΞοϓॲཧ ,74 ᶃݱࡏΛऔಘ XPSLFS ,FZ 7BMVF DPVOUFS
ΧϯτΞοϓॲཧ ,74 ᶃݱࡏΛऔಘ ᶄݱࡏʴ̍ XPSLFS ,FZ 7BMVF DPVOUFS
ΧϯτΞοϓॲཧ ,74 ᶃݱࡏΛऔಘ ᶅܭࢉ݁ՌΛॻ͖ࠐΈ ᶄݱࡏʴ̍ XPSLFS ,FZ 7BMVF DPVOUFS
ΧϯτΞοϓॲཧ ,74 ᶃݱࡏΛऔಘ ᶅܭࢉ݁ՌΛॻ͖ࠐΈ ᶄݱࡏʴ̍ XPSLFS ,FZ 7BMVF DPVOUFS
ฒྻ࣮ߦ͞Εͨ߹
ΧϯτΞοϓॲཧ ,74 ,FZ 7BMVF DPVOUFS ᶃݱࡏΛऔಘ XPSLFS
ΧϯτΞοϓॲཧ ,74 ᶄݱࡏʴ̍ ,FZ 7BMVF DPVOUFS ᶃݱࡏΛऔಘ
XPSLFS
ΧϯτΞοϓॲཧ ,74 ᶃݱࡏΛऔಘ ᶄݱࡏʴ̍ ,FZ 7BMVF DPVOUFS ผͷ8PSLFS͔Β
ॻ͖ࠐΈ͕ൃੜ XPSLFS XPSLFS
ΧϯτΞοϓॲཧ ,74 ᶃݱࡏΛऔಘ ᶄݱࡏʴ̍ ,FZ 7BMVF DPVOUFS
ผͷ8PSLFS͔Β ॻ͖ࠐΈ͕ൃੜ มߋͳ͠ XPSLFS XPSLFS ᶅܭࢉ݁ՌΛॻ͖ࠐΈ
ΧϯτΞοϓॲཧ ,74 ᶃݱࡏΛऔಘ ᶄݱࡏʴ̍ ,FZ 7BMVF DPVOUFS
ผͷ8PSLFS͔Β ॻ͖ࠐΈ͕ൃੜ ͜͜lzͰ͋Δ͖ʂ ᶅܭࢉ݁ՌͷΛॻ͖ࠐΈ XPSLFS XPSLFS
ΧϯτΞοϓॲཧ IUUQE XPSLFS ,74 ᶃݱࡏΛऔಘ IUUQE XPSLFS ᶄݱࡏʴ̍
,FZ 7BMVF DPVOUFS ผͷ8PSLFS͔Β ॻ͖ࠐΈ͕ൃੜ ͜͜lzͰ͋Δ͖ʂ ᶅܭࢉ݁ՌͷΛॻ͖ࠐΈ ϨʔείϯσΟγϣϯ ʢڝ߹ঢ়ଶʣ
ഉଞ੍ޚ
ෳͷϓϩηε͕ར༻ग़དྷΔڞ༗ࢿݯʹ ର͠ɺෳͷϓϩηε͔Βͷಉ࣌ΞΫη εʹΑΓڝ߹͕ൃੜ͢Δ߹ʹɺ͋Δϓ ϩηεʹࢿݯΛಠతʹར༻͍ͤͯ͞Δ ؒɺଞͷϓϩηε͕ར༻Ͱ͖ͳ͍Α͏ ʹ͢ΔࣄͰ߹ੑΛอͭॲཧͷࣄ 8JLJQFEJB ഉଞ੍ޚ
ϓϩηεؒͷഉଞ੍ޚख๏ w ϩοΫΛ֫ಘͰ͖Δ·Ͱ୯७ʹϧʔϓ͢Δ w $16ίετ͕ߴΊ w ഉଞ੍ޚॲཧ͕͘͝ظؒͳ߹ʹద͍ͯ͠Δ w ϩοΫΛ֫ಘͰ͖Δ·Ͱϧʔϓͨ͠Γػͨ͠Γ͢Δ
w ϩοΫ ΞϯϩοΫͱ͍͏ͭͷঢ়ଶΛ࣋ͭ w ୯७ͳϓϩηεؒͷഉଞ੍ޚʹద͍ͯ͠Δ w ઈରΛͪɺ͕Ҏ্Ͱ͋ΕϓϩηεΛϒϩοΫ͢Δ w.VUFYͷΑ͏ʹͰදͤͳ͍ഉଞ੍ޚʹద͍ͯ͠Δ εϐϯϩοΫ .VUFY 4FNBQIPSF
,74 .VUFY ഉଞ੍ޚ XPSLFS ઌఔͷΧϯτΞοϓॲཧʹ .VUFYͷϩοΫػߏΛ࣮ͨ͠߹ͷ ಈ࡞ʹ͍ͭͯઆ໌͠·͢ɻ
,74 .VUFY ഉଞ੍ޚ XPSLFS ΧϯτΞοϓॲཧΛ͍ͨ͠
,74 .VUFY ᶃϩοΫ ഉଞ੍ޚ XPSLFS
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS XPSLFS ϩοΫ͕ औΕͳ͍
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS XPSLFS ᶅղআ ϩοΫ
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS XPSLFS ᶅղআ ϩοΫ
ΧϯτΞοϓॲཧதϩοΫ͢Δ͜ͱͰ ϨʔείϯσΟγϣϯΛ͍Ͱ͍Δ
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS XPSLFS XPSLFS ϩοΫ͕
औΕͳ͍
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS XPSLFS XPSLFS ϩοΫ͕
औΕͳ͍ ͕ͪൃੜ͢Δ
,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ ഉଞ੍ޚ XPSLFS XPSLFS XPSLFS ϩοΫ͕
औΕͳ͍ ͕ͪൃੜ͢Δ ഉଞ੍ޚΛߦ͏ͱ ฒྻ࣮ߦ͞ΕΔ΄Ͳॱ൪͕ͪൃੜ͢ΔͷͰ جຊతʹύϑΥʔϚϯε͕ྼԽ͢Δ
ಉ࣌ଓ SFRTFD ഉଞ੍ޚͳ͠ ഉଞ੍ޚ͋Γ େ෯ʹύϑΥʔϚϯε͕ྼԽ ಉ࣌ଓͱSFRVFTUTFDͷάϥϑ
ಉ࣌ଓ SFRTFD ಉ࣌ଓͱSFRVFTUTFDͷάϥϑ ഉଞ੍ޚͷύϑΥʔϚϯεྼԽΛ ࠷খݶʹ͍͑ͨʂ
ύϑΥʔϚϯεྼԽΛ ࠷খݶʹ͑ΔͨΊͷ νϡʔχϯάϙΠϯτΛ հ͍͖ͯ͠·͢ʂ
ϦτϥΠִؒ
,74 .VUFY ᶃϩοΫ ϦτϥΠִؒ XPSLFS ϩοΫ͕ औΕͳ͍ XPSLFS ϘτϧωοΫ
,74 .VUFY ᶃϩοΫ ϦτϥΠִؒ XPSLFS ϩοΫ͕ औΕͳ͍ XPSLFS Ұൠతʹ.VUFYΛ ͬͨϩοΫػߏͰɺ
ϩοΫ͕औΕͳ͔ͬͨ ߹ϦτϥΠ͢ΔΑ͏ʹ ࣮͠·͢ɻ ϦτϥΠ͢Δִ͕͍ؒ΄͏͕ ϩοΫ͕औΓ͘͢ͳΔͷͰʁ
ಉ࣌ଓͱSFRVFTUTFDͷάϥϑ ഉଞ੍ޚͳ͠ νϡʔχϯάޙ
νϡʔχϯάલ ಉ࣌ଓ SFRTFD ЖTFD ЖTFD ϦτϥΠִؒ
ಉ࣌ଓͱSFRVFTUTFDͷάϥϑ ഉଞ੍ޚͳ͠ νϡʔχϯάޙ
νϡʔχϯάલ ಉ࣌ଓ SFRTFD ЖTFD ЖTFD ϦτϥΠִؒ ϦτϥΠִؒΛνϡʔχϯά͢Δ͜ͱͰ ഉଞ੍ޚͷύϑΥʔϚϯεྼԽΛ େ෯ʹ͑Δ͜ͱ͕Ͱ͖ͨʂ
ഉଞ੍ޚରͷॲཧ࣌ؒʹ Ԡͨ͡ϦτϥΠִؒ
ഉଞ੍ޚରͷॲཧ࣌ؒΛ͘͢Δ XPSLFS ,74 .VUFY ᶄΧϯτΞοϓ ᶃϩοΫ XPSLFS ᶅղআ
ಉ࣌ଓͱSFRVFTUTFDͷάϥϑ ಉ࣌ଓ SFRTFD
ഉଞ੍ޚͳ͠ ЖTFD ϦτϥΠִؒ ЖTFD ϦτϥΠִؒ ΧϯτΞοϓͷճΛ⇛ʹ͢Δͱ ࠷దͳϦτϥΠ࣌ؒ⇛ЖTFDʹͳͬͨ
ಉ࣌ଓͱSFRVFTUTFDͷάϥϑ ಉ࣌ଓ SFRTFD
ഉଞ੍ޚͳ͠ ЖTFD ϦτϥΠִؒ ЖTFD ϦτϥΠִؒ ΧϯτΞοϓͷճΛ⇛ʹ͢Δͱ ࠷దͳϦτϥΠճ⇛ЖTFDʹͳͬͨ ࠷దͳϦτϥΠ࣌ؒ ഉଞ੍ޚରॲͷॲཧ࣌ؒʹΑΔ͜ͱ͕ ͔ͬͨʂ
ϩϦϙοϓʂͰɺ ͜ΕΒͷνϡʔχϯάʹΑͬͯ ύϑΥʔϚϯε্͕͍ͯ͠·͢ʂ
ϩϦϙοϓʂͰͷࣄྫ ,74 .VUFY XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ υϝΠϯɾΞΧϯτຖͷಉ࣌ଓ ,FZ 7BMVF
ϩϦϙοϓʂͰͷࣄྫ ,74 .VUFY XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ υϝΠϯɾΞΧϯτຖͷಉ࣌ଓ ,FZ 7BMVF IPHFKQ
ϩϦϙοϓʂͰͷࣄྫ ,74 .VUFY XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ υϝΠϯɾΞΧϯτຖͷಉ࣌ଓ ,FZ 7BMVF )045@IPHFKQ
IPHFKQ ΠϯΫϦϝϯτ
ϩϦϙοϓʂͰͷࣄྫ ,74 .VUFY XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ υϝΠϯɾΞΧϯτຖͷಉ࣌ଓ ,FZ 7BMVF )045@IPHFKQ
IPHFKQ QIQͳͲͷίϯςϯπΛॲཧ ΠϯΫϦϝϯτ
ϩϦϙοϓʂͰͷࣄྫ ,74 .VUFY XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ υϝΠϯɾΞΧϯτຖͷಉ࣌ଓ ,FZ 7BMVF )045@IPHFKQ
IPHFKQ QIQͳͲͷίϯςϯπΛॲཧ ΠϯΫϦϝϯτ σΫϦϝϯτ
ϩϦϙοϓʂͰͷࣄྫ ,74 .VUFY XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ υϝΠϯɾΞΧϯτຖͷಉ࣌ଓ ,FZ 7BMVF )045@IPHFKQ
IPHFKQ QIQͳͲͷίϯςϯπΛॲཧ ΠϯΫϦϝϯτ σΫϦϝϯτ ϦτϥΠִؒΛదʹνϡʔχϯά͢Δ͜ͱͰ ఔύϑΥʔϚϯε্͕ͨ͠ʂ
ߋʹ
ϩϦϙοϓʂͰͷࣄྫ ,74 .VUFY XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ υϝΠϯɾΞΧϯτຖͷಉ࣌ଓ ,FZ 7BMVF )045@IPHFKQ
64&3@GVHBVTFS IPHFKQ XPSLFS IPHFKQ XPSLFS GVHBVTFSͷαΠτ
ϩϦϙοϓʂͰͷࣄྫ XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ ΞΧϯτຖͷಉ࣌ଓ IPHFKQ XPSLFS IPHFKQ XPSLFS GPPVTFSͷαΠτ υϝΠϯຖͷಉ࣌ଓ
,74 .VUFY ,FZ 7BMVF IPHFKQ ,74 .VUFY ,FZ 7BMVF GVHBVTFS
ϩϦϙοϓʂͰͷࣄྫ XPSLFS υϝΠϯɾΞΧϯτຖͷಉ࣌ଓΛΧϯτ͢Δ࣮ ΞΧϯτຖͷಉ࣌ଓ IPHFKQ XPSLFS IPHFKQ XPSLFS GPPVTFSͷαΠτ υϝΠϯຖͷಉ࣌ଓ
,74 .VUFY ,FZ 7BMVF IPHFKQ ,74 .VUFY ,FZ 7BMVF GVHBVTFS ഉଞ੍ޚରΛׂ͢Δ͜ͱͰ ϩοΫΛ֫ಘͰ͖Δػձ͕૿͑ΔͨΊ ύϑΥʔϚϯε͕ߋʹ্͢Δ߹͕͋Δʂ
·ͱΊ
·ͱΊ ϨʔείϯσΟγϣϯΛ͙ͨΊʹഉଞ੍ޚ͕ඞཁͳ࣮͕͋Δɻ ഉଞ੍ޚجຊతʹύϑΥʔϚϯε͕ྼԽ͢Δɻ ഉଞ੍ޚͷύϑΥʔϚϯε্ͷϙΠϯτΛͭհͨ͠ɻ ϩοΫऔಘͷϦτϥΠִؒΛνϡʔχϯά͢Δɻ ࠷దͳϦτϥΠִؒഉଞ੍ޚରͷॲཧ࣌ؒʹΑΔɻ ഉଞ੍ޚରΛͰ͖Δׂ͚ͩ͢Δɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ