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
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
Search
Infiniteloop
October 18, 2023
Programming
0
110
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
【タガヤス その13】ILの日常業務から 発表資料
https://tagayas.connpass.com/event/145290/
Infiniteloop
October 18, 2023
Tweet
Share
More Decks by Infiniteloop
See All by Infiniteloop
俺の PHP プロファイラの話 PHP スクリプトで PHP 処理系のメモリをのぞき込む
infiniteloop_inc
0
370
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
0
470
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
1
630
詫び石の裏側
infiniteloop_inc
0
510
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
7
29k
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
170
ADRという考えを取り入れてみて
infiniteloop_inc
0
160
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
130
アニメーションとスキニングをBurstで独自実装する
infiniteloop_inc
0
300
Other Decks in Programming
See All in Programming
Pulsar2 を雰囲気で使ってみよう
anoken
0
250
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
200
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
870
PHP ステートレス VS ステートフル 状態管理と並行性 / php-stateless-stateful
ytake
0
110
sappoRo.R #12 初心者セッション
kosugitti
0
270
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
3
240
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
800
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
190
PRレビューのお供にDanger
stoticdev
1
220
Rails アプリ地図考 Flush Cut
makicamel
1
130
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
260
2025.2.14_Developers Summit 2025_登壇資料
0101unite
0
140
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Unsuck your backbone
ammeep
669
57k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
The Language of Interfaces
destraynor
156
24k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Transcript
I ❤ Virtual Machines ԾڥΛΑΓศརʹ͏πʔϧͨͪ
ࣗݾհ wYDࡀ
੨ݝീށࢢੜ·Ε
ࣗݾհ wYDࡀ w੨ݝീށࢢੜ·Ε wೖࣾϲ݄ͷ υ৽ਓ
ೖࣾͯ͋ͬͨ͋͠Δ
ࠓλΨϠεͰ ͬͯΈͳ͍ʁ
ͦͷͷϊϦ͚ͩͰ Ҿ͖ड͚͍͍ͨͷͷ
😰
˞ݸਓͷภݟͰ͢
😰
˞ݸਓͷภݟͰ͢
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
WT
࣋ͪωλͰҰ੮
None
ຊ
ͷલʹ
લఏ
wఆ͍ͯ͠Δͷେͷ෦͕1)1 Ͱॻ͔Ε͍ͯΔ8FCΞϓϦέʔγϣ ϯͷ։ൃͰ͢
w։ൃऀ͕ར༻͍ͯ͠Δීஈ͍ͷڥ w8JOEPXT wNBD04
wຊ൪ڥ-JOVYΛఆ͍ͯ͠·͢
࣍
None
None
None
None
ԾϚγϯʹΑΔ ։ൃڥߏங
ํ๏ͦͷ ۃ
͓ۚͰղܾ
ϓϩδΣΫτ͝ͱʹ·ͬͨ͘ಉڥͷઐ༻ ։ൃαʔό
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
ํ๏ͦͷ
ݱ࣮తͳͭ
ԾϚγϯ
ԾϚγϯΛ࣮ݱ͢Δ ༏लͳϓϩμΫτ ଟʑ͋Γ·͕͢
ࠓճࣄྫଟ͘ ೖ͍͢͠ 7BHSBOU 7JSUVBM#PYͰ͓ΛਐΊ·͢
7JSUVBM#PY
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXT NBD04-JOVYͷϓ ϥοτϑΥʔϜͰಈ࡞
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXTNBD04 -JOVYͷϓϥοτϑΥʔϜͰ ಈ࡞ wख࣋ͪͷ1$ͷதʹԾ తͳ1$Λ্ཱͪ͛ͯ ͘ΕΔ
7BHSBOU
7BHSBOU wԾϚγϯΫϥυ ্ͷϚγϯΛΑ͠ͳʹ ઃఆ্ཱͯͪ͛ͯ͘͠ ΕΔαϙʔτπʔϧ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏ 3VCZεΫϦϓτ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏3VCZε ΫϦϓτ wଞͷߏཧπʔϧͱ ͷڠௐ
ϝϦοτ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ wؒҧͬͯյͯ͠
σϝϦοτ wͦΕͳΓʹεϖοΫඞཁ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ wͨͿΜ͙͜͜Β͍ͳΒ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ w ͨͿΜ͙͜͜Β͍ͳΒ wཉΛݴ͑ϝϞϦ(#ͰετϨʔ δ44% w ͓ࡒʹ͍͞͠ͱԿͩͬͨͷ͔
͜͜·Ͱ·ͱΊ ઃඋࢿΛ͓͑ͭͭ͞ ීஈ͍ͷڥͷ ΠϯύΫτΛ͑ͨ։ ൃڥΛ࡞Γ͍ͨ ͱ͍͏͜ͱͰ͋Ε Ծڥͷߏங͕͓ ͢͢Ί
7JTVBM4UVEJP$PEF 3FNPUF%FWFMPQNFOU &YUFOTJPOͷհ
ԾڥͰίʔυΛॻ͘ͱ͖ ͥͻͬͯ΄͍͠
ฐࣾͰ1)14UPSN͕ਓؾͷΑ͏Ͱ͢ ͪ͜Β͍͍͢Ͱ͢Α
ࢲ74$PEF͕͖ ͳͷͰ74$PEFͰॻ͍͍͖ͯ·͠ΐ͏
͜ͷ࣌Ͱͷ ։ൃڥͷߏ
None
None
None
None
None
None
͜ͷลʹʮΠέςφΠײʯ ͋Γ·ͤΜʁ ೋॏཧ͍ͬͯ͏͔ɾɾɾ
None
ήετ͔ΒͷΞΫηε͕͍
None
None
ʅɾТɾʆ γϣϯϘϦοΫϦϯΫ
None
͜Ε͡Όҙຯ͕ͳ͍Αͳ͋
None
None
None
None
None
None
None
None
None
None
None
None
None
None
εοΩϦʂ
͜͜·Ͱ·ͱΊ 74$PEF 3FNPUF %FWFMPQNFOU ԾϚγϯΫϥ υͳͲͷϦϞʔτ։ ൃͷਏΈΛ૬Ϩϕ ϧͰܰݮͯ͘͠ΕΔ
τϯωϦϯάαʔϏεΛ ͓͏
։ൃ͕ਐΜͰ͖ͨΒ
$BTF"
։ൃதͷϓϩμΫτʹ͍ͭͯ Կ͔ఏҊ͍ͨ͠ͱ͖ʹ։ൃதͷ ಈ͖Λݟͤͨ΄͏͕खͬऔΓૣ͍ͱ͖ͬͯ͋Γ·ͤΜ͔ʁ
ϓϩμΫγϣϯڥҎ֎Ͱ ಈ࡞ڥΛ࡞ͬͯͦ͜ʹ ։ൃதϒϥϯνΛσϓϩΠ
͏࡞Δͱ͔ͦ͜·Ͱ େࣄ͡Όͳͯ͘ɾɾɾ Ͱݟ͍ͤͨײ
Ұ࣌తͰ͍͍
$BTF#
ϩʔΧϧϚγϯͰϒϥβ͔ΒݟΔ 8FCΞϓϦΛ IPTUTϑΝΠϧΛฤू͢Δ͜ͱͰ ֬ೝ͍ͯͨ͠
ػೳՃ
֎෦"1*ͱͷଓ
ίʔϧόοΫઌʹ IUUQTͰ7BMJEͳূ໌ॻΛ ࣋ͬͨϗεςΟϯά͕ඞਢ
None
ͦΜͳͱ͖ʹͬͯ΄͍͠ OHSPLͳͲͷτϯωϦϯάαʔϏε
τϯωϦϯάαʔϏεͱ wϩʔΧϧϚγϯ͔Β αʔϏεଆͷαʔόʹ ͭͳ͍ͩ44)ίωΫ γϣϯΛͬͯτϯω ϧԽ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ wαʔϏεଆ͔Βϗετ ໊͕ൃߦ͞ΕΔ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞Ε Δ wͦͷϗετ໊ʹ͔ͬ ͯϒϥβ͕
)551 T ௨৴Λ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷαʔ όʹͭͳ͍ͩ44)ίωΫγϣϯΛ ͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞ΕΔ w ͦͷϗετ໊ʹ͔ͬͯϒϥβ͕ )551
T ௨৴Λ͢Δ wαʔϏεଆ͕ϩʔΧϧϚ γϯͷίϯςϯπΛτϯ ωϧܦ༝Ͱऔಘͯ͠ 8FCϒϥβʹฦ͢
MPDBMIPTU͔Β IUUQTʜ ͱ͍͏63-Ͱίϯςϯπ͕ݟͤΒΕΔ
੍ݶ͋Δ wແྉϓϥϯ࣌ؒ͋ͨΓͷ)551ϦΫΤετʹ ੍ݶ͕͋Δ
63-΄΅͍ࣺͯ 44)ͷίωΫγϣϯ͕ ΒΕ͍ͯΔؒͷΈ༗ޮ
ڵຯ͕Θ͍ͨͷͰ
OHSPLҎ֎ʹ ྨࣅαʔϏεΛௐͯΈͨ
TFSWFP IUUQTTFSWFPOFU
ಛ wݻఆͷαϒυϝΠϯಠࣗυϝΠϯ͕ ͑Δ wηϧϑϗεςΟϯά༻ͷαʔόΞϓϦ ఏڙ͞Ε͍ͯΔ wࣗͰαʔόΛͨͯͯಠࣗυϝΠϯͰ ӡ༻Ͱ͖ͦ͏
MPDBMUVOOFM IUUQTMPDBMUVOOFMHJUIVCJPXXX
ಛ wΫϥΠΞϯτOQ̼ wαʔόଆͷΞϓϦOQN wTFSWFPಉ༷ࣗͰαʔό͕ͨͯΒΕΔ w࣌ؒଳʹΑΔ͔͠Εͳ͍͕एׯ͍ ͔ʁ
͜͜·Ͱ·ͱΊ OHSPLͳͲͷ αʔϏεͰ MPDBMIPTUͷ ΞϓϦέʔγϣϯΛ Πϯλʔωοτ্ʹ ެ։Ͱ͖Δ
݁ͼ
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
lશମͷ࿑ྗΛݮΒͨ͢Ίʹ खؒΛ੯͠·ͳ͍ؾ࣭z
͙͢ΕͨπʔϧΛॿ͚Δ πʔϧ͕͞͠ͷཱྀଓ͘
ͨͩ͠
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ πʔϧͦͷͷͷ༏ल͓͖ͯ͞͞ ࣗͷखʹೃછΉ͜ͱ͕Ұ൪େࣄ
ؒΛ૿ͦ͏
͓͋ͱ͕ΑΖ͍͠Α͏Ͱ