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
アイスタイルにおけるgoa導入事例 / case studies of goa in isty...
Search
銀シャリ
June 16, 2017
Technology
0
1.7k
アイスタイルにおけるgoa導入事例 / case studies of goa in istyle inc
銀シャリ
June 16, 2017
Tweet
Share
More Decks by 銀シャリ
See All by 銀シャリ
Goではじめたいテスト / testing we want to start with Go
ginshari
2
140
クロワッサンとGOの話と見せかけてReactNativeの話 / croissant, Go, and React Native
ginshari
0
120
Other Decks in Technology
See All in Technology
「魔法少女まどか☆マギカ Magia Exedra」のグローバル展開を支える、開発チームと翻訳チームの「意識しない協創」を実現するローカライズシステム
gree_tech
PRO
0
570
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.1k
AWS環境のリソース調査を Claude Code で効率化 / aws investigate with cc devio2025
masahirokawahara
2
1.4k
生成AIでセキュリティ運用を効率化する話
sakaitakeshi
0
220
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
150
広報における効果的なプロンプトエンジニアリング入門.pdf
suguruooki
0
110
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
19
9.2k
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
1
200
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
160
kubellが考える戦略と実行を繋ぐ活用ファーストのデータ分析基盤
kubell_hr
0
140
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
11
970
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
2
370
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Practical Orchestrator
shlominoach
190
11k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Navigating Team Friction
lara
189
15k
How GitHub (no longer) Works
holman
315
140k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Transcript
ΞΠελΠϧʹ͓͚Δ HPBಋೖࣄྫ HPBษڧձ JOຊҰஸ
ࣗݾհ ͠ͳ͍ελΠϧ
ΞδΣϯμ ΞΠελΠϧͱϚΠΫϩαʔϏε ΞΠελΠϧʹ͓͚ΔHP HPBͷ࠾༻ʹ͍ͭͯ ಋೖʹ͋ͨͬͯࠔͬͨ͜ͱͳͲ ՝ͱ͜Ε͔Β ·ͱΊ
5-%3 )c8 HP͍͍ͧ HPB͍͍ͧ ͭΒ͍ͱ͜Ζ͕ΜΔͧ
ΞΠελΠϧͱϚΠΫϩαʔϏε
ࣄۀձࣾͱͯ͠ͷࣄ ࣄۀͷεέʔϧ ଟͷαʔϏε͕͢Ͱʹଘࡏ͠ɺߋʹ૿͍͑ͯ͘ ϓϥοτϑΥʔϜͱͯ͠ͷ͕ΓΛ࣮ݱ͍ͯ͘͠ ෳͷαʔϏεΛͭͳ͍͛ͯ͘Έͮ͘Γ
৭ΜͳॴͰΑ͘ฉ͘Α͏ͳঢ়گͨͪ αʔϏε͕૿͑ͯɺαʔϏεؒͰͷ࿈ܞ૿͍͑ͯΔ εϚϗΞϓϦͷॏཁੑˢˢˢ ʢ8FCϝΠϯͰ͘ӡ༻͞Ε͖͍ͯͯͨʣ ͭͷϓϩμΫτ͕ංେԽ͍ͯ͘͜͠ͱͰ ίʔυϕʔε͕ෳࡶԽ ˠϚΠΫϩαʔϏεԽΛਐΊ͍͔ͯͳ͍ͱ ཱͪߦ͔ͳ͘ͳΔʂʂ
ਐͲ͏Ͱ͔͢ʁ ͍͖ͬͯ
ΞΠελΠϧʹ͓͚ΔHP
ಋೖ࣌ܥྻ ॳ಄ όονॲཧΛHPͰ࣮ʢฐࣾʹ͓͚ΔHPจ໌ͷ͓͜Γ ৽نཧը໘ʢ41"ʣ࡞Ͱ8FCσϏϡʔ FDIP ಈըཧ"1*ͰߴෛՙHPBσϏϡʔ ݱࡏ εϚϗΞϓϦ͚"1*
HPB ࣾ༻όονॲཧɺτϥοΩϯάαʔόʔͳͲ HP࠾༻ϓϩδΣΫτ૿ՃதʢŘŵŠŠʣʂ
αʔόʔߏ ΦϯϓϨͰ͢ ϩʔυόϥϯαʔ͕ϦΫΤετΛHP༻αʔόʔ̎ʹৼΓ͚ HPͷ࣮ߦαʔόʔͰɺOHJOYͰϩʔΧϧϙʔτͰෳىಈͨ͠ HPͷϓϩηεʹϦΫΤετΛৼΓ͚ HPͷϓϩηεόΠφϦʹϏϧυͨ͠ΞϓϦέʔγϣϯΛϙʔτ Λ͚ͯTVQFSWJTPSEͰෳىಈ ʢݱঢ়ɿ̍͋ͨΓ̎ϓϩηεʣ
supervisord bin(go) upstream 8FC"1*αʔόʔߏங࣌ͷجຊߏ supervisord bin(go) upstream load balancer
ॲཧ͍ͯ͠ΔϦΫΤετ ͬ͘͟ΓOHJOYͷΞΫηεϩάΛܭࢉͯ͠Έ·ͨ͠ HPͷΞϓϦέʔγϣϯϓϩηε̍ຊ͋ͨΓ ̍ɿ Oສ ʙ Nສ ϦΫΤετ ̎º̎ϓϩηεͳͷͰ ̍ɿ
Oສ ʙ Nສ ϦΫΤετ ͬ͘͟ΓҰϲ݄͋ͨΓ Yສ ʙ ZສϦΫΤετ
HPBͷ࠾༻ʹ͍ͭͯ
HPB࠾༻എܠ ॳFDIP HPKJͳͲͷ8"'Λར༻ ϓϩδΣΫτؒͰར༻͢Δ"1*ఏڙཁ݅ "1*Λఏڙ͢ΔઌͷϓϩδΣΫτ ʹݴޠɺεΩϧηοτɺνʔϜจԽ౷Ұ͞Ε͍ͯͳ͍ υΩϡϝϯτ͕ৗʹϝϯς͞Ε͍ͯΔඞཁੑɿେ TXBHHFSͰ"1*ΛఏڙͰ͖ΔHPB͕ྑͦ͞͏ ˠ࣮ࡍྑ͔ͬͨͷͰݱࡏʹࢸΔ
"1*υΩϡϝϯτߋ৽͞Εͳ͍ Α͋͘Δ෩ܠ ˞ݸਓͷײͰ͢ લఏɿΔ͜ͱͨ͘͞Μ 㲗 ΕΔͻͱ͘͢ͳ͍ ࡞ίετ ˠ ΪϦ͑Δʢ͑ͳ͍ʣ ߋ৽ίετ
ˠ ɾɾɾ
"1*υΩϡϝϯτߋ৽͞Εͳ͍ HPBಋೖʹΑΔվળ • HPBಋೖʹΑͬͯɺ࣮ 㲈υΩϡϝϯτߋ৽ʹ • "1*ΤϯυϙΠϯτͷϨϏϡʔΛTXBHHFSΛݟͳ͕Β࣮ ࢪ͢Δ͜ͱͰϨϏϡʔগָ͠ʹ ˞HPBͷಋೖͰલఏʢΔ͜ͱͨ͘͞Μʣվળ͠·ͤΜ
ಋೖʹ͋ͨͬͯࠔͬͨ͜ͱͳͲ
ϓνࠔͬͨ͜ͱ • $034ઃఆΛEFTJHO࡞࣌ʹࢦఆ͠ͳ͍ͱ͍͚ͳ͍ ʢຊ൪ͱεςʔδͰڐ༰͍ͨ͠63-͕ҟͳΔͷͰࠔΔʣ • /VNCFSܕͷϝϯόʔʹ%FGBVMUΛೖΕΑ͏ͱ͢ΔͱHPBHFOͰੜ ͞ΕΔίʔυ͕JOUͰઃఆ͞Εͯ͠·ͬͨ • TXBHHFS༻ͷϧʔςΟϯάΛ%4-ʹՃ͢ΔͱɺͦͷϧʔςΟϯά ͕TXBHHFSʹग़ͯ͘Δ
• TXBHHFS༻ͷϧʔςΟϯάΛՃͨͨ͠Ίຊ൪ͰTXBHHFS͕ݟΒ Εͯ͠·͏ͷͰࠔͬͨ
$034ઃఆΛEFTJHO࡞࣌ʹࢦఆ͠ͳ͍ͱ͍͚ͳ͍ • &DIPͷ$034ϛυϧΣΞΛύΫͬͯͷΑ͏ʹઃఆͯ͠ ͔Β6TFग़དྷΔϛυϧΣΞΛ࡞ͬͨ HJUIVCDPNEFBEDIFBUHPBDPST ͜Μͳ;͏ʹ͍·͢ TFSWJDF6TF HPBDPST8JUI$POGJH TFSWJDF HPBDPST(PB$034$POGJH\
"MMPX0SJHJOT<>TUSJOH\IUUQFYBNQMFDPN^ "MMPX.FUIPET<>TUSJOH\HPBDPST(&5^ ^
/VNCFSܕͷϝϯόʔʹ%FGBVMUΛೖΕΑ͏ͱ͢ΔͱHPBHFOͰੜ͞ΕΔίʔ υ͕JOUͰઃఆ͞Εͯ͠·ͬͨ ͯ͠13ϚʔδࡁΈ ʢҰॠ֘ՕॴҎ֎ͷςετ͕յΕͯযͬͨʣ ɾɾɾ͍͞͠
4XBHHFSϧʔςΟϯάपΓͷ • HPBHFOͤͣʹTXBHHFSKTPOΛTFSWF͢ΔͨΊͷDPOUSPMMFS Λ࡞ɾՃ • ϏϧυλάͰϑϥάઃఆΛΓସ͑ɺຊ൪࣌TXBHHFS͕ݟΒ Εͳ͍Α͏ʹ্ه$POUSPMMFSΛՃ͠ͳ͍Α͏ʹͨ͠ ·ͱΊͯ·͢ ˠIUUQTHJUIVCDPNEFBEDIFBUUIBOLTTXBHHFSTBNQMF
՝ͱ͜Ε͔Β
HPHPBΛಋೖͯ͠ݟ͑ͨ՝ • HPͷαʔόʔ͕ෛՙΛࡹ͚ͯ͠·͏͜ͱͰɺ ٯʹଞͷࣾ8FC"1*ʢ1)1ʣΛୟ͖͗ͯ͢ ͦͪΒଆ͕མͪͯ͠·͏ • ࣾͷ"1*υΩϡϝϯτͷܗࣜʹΒ͖͕ͭ͋Γɺ ·ͩ·ͩ4XBHHFSͷݞ͕ڱ͍ • HPͰ։ൃ͢Δϝϯόʔ͕·ͩ·ͩগͳ͍ʢݱࡏ໊ʣ
HPHPBΛಋೖͯ͠ݟ͑ͨ՝ɾɾɾͦͯ͠ • HPͷαʔόʔ͕ෛՙΛࡹ͚ͯ͠·͏͜ͱͰɺ ٯʹଞͷࣾ8FC"1*ʢ1)1ʣΛୟ͖͗ͯ͢ ͦͪΒଆ͕མͪͯ͠·͏ ˠHPͰͲΜͲΜ"1*Λஔ͖͍͖͍͑ͯͨ • ࣾͷ"1*υΩϡϝϯτͷܗࣜʹΒ͖͕ͭ͋Γɺ ·ͩ·ͩ4XBHHFSͷݞ͕ڱ͍ ˠHPBͰ։ൃ͠·ͬͯࣾ͘Λ4XBHHFSͷఱԼʹ͍ͨ͠
• HPͰ։ൃ͢Δϝϯόʔ͕·ͩ·ͩগͳ͍ʢݱࡏ໊ʣ ˠHPΛΊΔ͜ͱͰΓ͍ͨਓΛ૿͍͖͍ͯͨ͠
HPͰ։ൃ͢Δϝϯόʔ͕ ·ͩ·ͩগͳ͍ʢݱࡏ໊ʣ
HPͰ։ൃ͢Δϝϯόʔ͕ ·ͩ·ͩগͳ͍ʢݱࡏ໊ʣ
HPͰ։ൃ͍ͨ͠ ΤϯδχΞ͕ ΄͍͠ʂʂ
·ͱΊ • αʔϏε͕૿͑ɺϚΠΫϩαʔϏεԽ͕ٸ • HPͷಋೖʹΑΓɺݸʑͷϓϩμΫτͷ্࣭͕͍ͬͯ ͖ͦ͏ • HPBʹΑͬͯϚΠΫϩαʔϏεؒͷ࿈ܞ͏·͍͖ͦ͘͏ ʢ͍ͬͯ΄͍͠ •
͕Μ͍ͬͯ͜͏ͳ
͋Γ͕ͱ͏͍͟͝·ͨ͠