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
ホスティングを支える mruby
Search
harasou
July 04, 2015
Technology
2
2.7k
ホスティングを支える mruby
次世代ホスティングをmrubyで実現する話
harasou
July 04, 2015
Tweet
Share
More Decks by harasou
See All by harasou
ホスティングにおける fuse の利用
harasou
0
170
エボルバビジネスサポート勉強会
harasou
0
44
第二回ホスティング事業部TechMTG / Hosting TechMTG No2
harasou
0
72
HosCon Summer 2016 @福岡
harasou
1
220
200万 Webサイトを支える ロリポップ!と mruby
harasou
7
4.1k
Other Decks in Technology
See All in Technology
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
170
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
Storage Browser for Amazon S3
miu_crescent
1
140
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
160
社内イベント管理システムを1週間でAKSからACAに移行した話し
shingo_kawahara
0
180
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
530
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
200
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
非機能品質を作り込むための実践アーキテクチャ
knih
3
1.2k
KubeCon NA 2024 Recap / Running WebAssembly (Wasm) Workloads Side-by-Side with Container Workloads
z63d
1
250
大幅アップデートされたRagas v0.2をキャッチアップ
os1ma
2
530
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
1
200
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Practical Orchestrator
shlominoach
186
10k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
The Cost Of JavaScript in 2023
addyosmani
45
7k
GitHub's CSS Performance
jonrohan
1030
460k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Transcript
2015/07/04 ୈ2ճϖύϘςοΫΧϯϑΝϨϯε ϗεςΟϯάΛࢧ͑Δ NSVCZ GMO Pepabo, Inc. SOGO Haraguchi
ࣗݾհ ˏIBSBTPV
ࣗݾհ ݣձࣾͷਖ਼ࣾһͱͯ͠ɺ΄Ͳ 4*FSΛసʑͱͨ͠ޙɺϖύϘʹɻ ݄ʹೖࣾɻ ϗεςΟϯάࣄۀ෦ΠϯϑϥνʔϜ Ԭ
Ϣʔβͷ8&#ϝʔϧΛ༬͔ͬͯӡ༻ɻ ͍ΘΏΔʮϨϯλϧαʔόʔʯͱ͔ɻ ϗεςΟϯάͱ
ΞδΣϯμ ϖύϘͷ࣍ੈϗεςΟϯά NPE@NSVCZͷ׆༻ ࣦഊࣄྫ ͦͷଞͷNSVCZར༻
࣍ੈϗεςΟϯά
ϗεςΟϯάͷΈ Ϧιʔεͷ༻ঢ়گ͕ɺ҆ఆ͠ͳ͍ɻ ಉ༵͡Ͱ͜Μͳʹҧ͏ ͜ͷΜ
ύϑΥʔϚϯεͱ҆ఆੑ ग़య͜Ε͔ΒͷϖύϘͷٕज़CZ,FOUBSP,VSJCBZBTIJ
Ϧιʔε੍ݶͷᮢΛ ಈతʹมߋ͍ͨ͠ Ͳ͏࣮ݱ͢Δ͔ʁ
NSVCZ
“ http://www.mruby.org/ mruby is the lightweight implementation of the Ruby
language complying with part of the ISO standard. mruby can be linked and embedded within your application.
NPE@NSVCZ !NBUTVNPUPSZ͕։ൃ NSVCZͷεΫϦϓτͰ༷ʑͳ"QBDIFͷ ੍ޚ͕Մೳ NPE@NSVCZ NSVCZεΫϦϓτ NPE@TTM DPSF
"QBDIF MJCNSVCZB NSVCZDHSPVQ NSVCZεΫϦϓτ
NSVCZDHSPVQ MJCDHSPVQͷόΠϯσΟϯά lDHSPVQzίϯτϩʔϧάϧʔϓͱݺΕΔ -JOVYΧʔωϧͷػೳ DQV࣌ؒɺγεςϜϝϞϦʔɺωοτϫʔΫ ଳҬ෯ͳͲͷϦιʔε੍ޚ͕Մೳ
DHSPVQ lDQVTIBSFTz$16࣌ؒͷׂ߹Λࢦఆ ϧʔτάϧʔϓɿDQVTIBSFT Ϣʔβ"άϧʔϓɿDQVTIBSFT $16͏ϓϩηε# $16͏ϓϩηε" Ϣʔβ#άϧʔϓɿDQVTIBSFT $16͏ϓϩηε$ ^
^ ߹ܭͰˋ ̍ͭͰˋ
ઃఆྫ 1 <IfModule mod_mruby.c> 2 mrubyFixupsMiddle resouce_manage_start.rb cache 3 mrubyLogTransactionMiddle
resouce_manage_end.rb cache 4 </IfModule> 1 r = Apache::Request.new 2 u = r.finfo.user 3 4 c = Cgroup::CPU.new u 5 if c.exist? 6 c.modify 7 else 8 c.create 9 end 10 c.attach SFTPVSDF@NBOBHF@TUBSUSC NPE@NSVCZDPOG
ࣦഊྫ LFSOFM DHSPVQͷ֨ಆ
WNTXBQQJOFTT lWNTXBQQJOFTTzTXBQ͢Δස Λௐઅ͢ΔΧʔωϧύϥϝʔλ σϑΥϧτʮʯ IUUQEͷϖʔδ͕ TXBQ͢Δͱ൵ࢂ ͜͜Ͱ
TXBQQJOFTT
LFSOFMGUSBDF@FOBCMFE lLFSOFMGUSBDF@FOBCMFEz ϨΠςϯγ͓ΑͼύϑΥʔϚϯε ͷੳͱσόοά DQVͷγεςϜ͕ ͣͬͱߴ͍ɻ ͜͜Ͱ GUSBDF@FOBCMFE
DQVDGT@RVPUB@VT lDQVDGT@RVPUB@VTz DHSPVQͷશλεΫ͕Ұఆͷظؒ ʹ࣮ߦ͞ΕΔ߹ܭ࣌ؒΛࢦఆ ෛՙΛ͔͚Δͱ04͕ϋϯάΞοϓ DQVDGT@RVPUB@VTʹΛઃఆ͢ΔͱσουϩοΫ͕ղআ͞Εͨ
DQVTIBSFTͩͱͳ͠
ͦͷଞNSVCZ ͷར༻
IUUQEPTEFUFDUPS ෛՙʹछྨ͕͋Δ ҰճͷΞΫηεͰେྔͷ$16Ϧιʔε Λফඅ͢Δ NPE@NSVCZ NSVCZDHSPVQ
େྔΞΫηεʹΑΓϦιʔεΛফඅ͢Δ NPE@NSVCZ IUUQEPTEFUFDUPS
IUUQEPTEFUFDUPS %P4Έ͍ͨͳΞΫηε͕དྷͨ࣌ʹ ݕ੍ͯ͠ޚͰ͖Δ ྫʣ͋ΔυϝΠϯͷΞΫηε͕ɺ ̍ඵؒʹճདྷͨ࣌ɺ ࣍ͷ̍ඵؒʢ͘͠ճΞΫ ηε͕དྷΔ·ͰʣɺΛฦ͢ɻ
OHY@NSVCZ ϦόʔεϓϩΩγΛߴԽ NSVCZ͔ΒNFNDBDIFEɺNZTRM ଓ͠ɺϓϩΩγઌΛఆ͢Δ LFFQBMJWFػೳͷར༻
NZTRMNSVCZ !NBUUO͞Μ࡞ NZTRMͷτϦΨʔͰNSVCZΛ࣮ߦ ͢Δ NSVCZεΫϦϓτ͔ΒOHY@NSVCZ Ͱར༻தͷڞ༗ϝϞϦΛૢ࡞
NSVCZWJSUVBMJOH Ϧιʔε੍ޚՄೳ DHSPVQ ͳ DISPPUڥͰɺϛυϧΣΞί ϚϯυΛ࣮ߦͤ͞Δ͜ͱ͕Ͱ͖Δɻ ίϯςφඞཁʁ
࠷ޙʹ
ϖύϥϯνϣϯͬͯ·͢ ϖύϥϯνϣϯͱɾɾɾϖύϘʴMVODIFPO ʢன৯ձʣɻ ϖύϘΤϯδχΞͱϥϯνΛ͠ͳ͕Βָ͘͠ ձͰ͖Δ੍Ͱ͢
͝੩ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠