Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
脱・同期処理!マイクロサービスにおける負荷分散の勘所
Search
akira345
July 18, 2025
Technology
0
81
脱・同期処理!マイクロサービスにおける負荷分散の勘所
JAWS-UG広島 第23回勉強会 で発表したスライドです
akira345
July 18, 2025
Tweet
Share
More Decks by akira345
See All by akira345
AWSデプロイツール紹介
akira345
0
48
40歳でやったこと
akira345
0
25
回路を読むために必要なこと
akira345
0
14
おれのAWSがこんなに辛い訳がない!!
akira345
0
21
Dockerを触ってみよう
akira345
0
83
アラフォー世代が基板を作ってみた(公開用)
akira345
0
140
ESP-WROOM-02でプチIoT
akira345
0
110
トランジスタの働き(超入門編)
akira345
0
17
基板から回路図を起こしてみよう
akira345
0
1.4k
Other Decks in Technology
See All in Technology
AI 時代のデータ戦略
na0
8
3.1k
.NET 10 のパフォーマンス改善
nenonaninu
2
4.4k
Modern Data Stack大好きマンが語るSnowflakeの魅力
sagara
0
260
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
37k
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
15
9.1k
プロダクトマネジメントの分業が生む「デリバリーの渋滞」を解消するTPMの越境
recruitengineers
PRO
2
160
MCP・A2A概要 〜Google Cloudで構築するなら〜
shukob
0
140
知っていると得する!Movable Type 9 の新機能を徹底解説
masakah
0
170
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.3k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
ECMAScript仕様の最新動向: プロセスの変化と仕様のトレンド
uhyo
2
320
シンプルを極める。アンチパターンなDB設計の本質
facilo_inc
1
980
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
119
20k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.2k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
RailsConf 2023
tenderlove
30
1.3k
Six Lessons from altMBA
skipperchong
29
4.1k
Making Projects Easy
brettharned
120
6.5k
KATA
mclloyd
PRO
32
15k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Transcript
2025/07/18 Akira345 JAWS-UGౡ ୈ23ճษڧձ AWS Summit Japan 2025 re:Cap ɾಉظॲཧʂ
ϚΠΫϩαʔϏεʹ͓͚Δෛՙࢄͷצॴ
ࣗݾհ • ۚా ߊʢHNʣ • ॴଐɿגࣜձࣾ • I like Cloud.
I like AWS. • ࣗαʔόʢDockerɺProxmoxɺHyper-Vʣ • ిࢠ࡞ʢղɾഁյɾमཧʣ ݸਓݕূΛຯʹ͍ͬͯͨΓ͠·͢ɾɾɾ
ຊʹೖΔલʹ ·ͣݱ࣮Λೝࣝ͠Α͏
ʮઈରʹʯམͪͳ͍γεςϜଘࡏ͠ͳ͍ɻ ͕ ʮམͪʹ͍͘ʯγεςϜߏங͢Δ͜ͱ͕Ͱ͖Δɻ ʢͨͩ͠ཁ՝ۚʣ
མͪʹ͍͘γεςϜΛ࡞ΔͨΊʹʁ ͦΕΛ౿·্͑ͨͰ • Βͳ͍͜ͱɺఘΊΔ͜ͱΛܾΊΔ • Nສਓʹର͠ʮಉ࣌ʹʯ৴Λ͢Δ • ઍਓʮಉ࣌ʹʯϩάΠϯΛ͢Δ • جຊతʹʮಉ࣌ʯ͔ͭʮେྔʯͷϦΫΤετΛॲཧ͢Δ͜ͱΛఘΊΔ
• ͨͬͨ1ඵͰλΠϛϯά͕ζϨΕͦΕʮಉ࣌ʯͰͳ͍ʢॏཁʂʣ
AWSΫϥυͳͷʹͳͥौ͍ Ϩʔτ੍ݶ͕͋Δͷʁ ͳ͔ͥʁ • AWSͷ֤छαʔϏεʢجຊతʹʣAPIΛ௨ͯ͡࿈ܞΛ͍ͯ͠Δ • AWSόοΫΤϯυϦʔδϣϯɺAZʹׂΓͯΒΕͨϢʔβ͔ΒͷϦΫΤ ετΛॲཧ͢Δඞཁ͕͋Δ • વɺAWSଆͷAPIʹΞΫηε͕ूத͞ΕΔͱࠔΔ͜ͱʹͳΔ
• όοΫΤϯυͷϦιʔε༗ݶͰ͋Γɺ͔ͭॠ࣌ʹεέʔϧ͠ͳ͍ • ࠓճʮॲཧΛूதͤ͞ͳ͍ʯͱ͍͏؍Ͱ͍͔ͭ͘έʔεΛհ͠·͢
έʔεͷհ
େྔͷϢʔβΛ࡞͠ɺϩάΠϯURLΛΒࢃ͖͍ͨ • ؍ • CognitoͷAPIࢥͬͨҎ্ʹϨʔτ੍ݶ͕ݫ͍͠ͷͰɺʮಉ࣌ʹʯେྔͷϢʔβΛ࡞͢Δ ͜ͱΛආ͚Δ • ߏྫ
Ͱ͖Δ͜ͱɾͰ͖ͳ͍͜ͱ • Ͱ͖Δ͜ͱ • ʮ࣌ؒΛ͔͚ͯͰʯେྔͷϢʔβΛ࡞͠ɺϩάΠϯURLΛΒࢃ͘͜ͱ͕Ͱ͖Δ • Ͱ͖ͳ͍͜ͱ • ࣌ؒʹେྔͷϢʔβΛ࡞͢Δ •
ଥڠ • ʮಉ࣌ʯʹʮେྔʯͷϢʔβΛ࡞͠Α͏͕ɺʮ࣌ؒʯΕΑ͏͕Ϣʔβ͔ΒݟΕʮϩάΠ ϯURL͕ಧ͍࣌ʯ͕Ϣʔβొ͞Εͨ࣌ͱͳΔͷͰɺʮॲཧશମͷԆʯʹͳΒͳ͍ • ͨͩ͠ɺʮϩάΠϯ͕ૣ͍ऀউͪͰநબ͢Δʯͱ͍͏Α͏ͳ༻్ͷ߹ผͷΈΛߟ͑Δඞ ཁ͕͋Δ
࡞ͨ͠WebAPIʹର͢ΔϦΫΤετΛ ʮશͯ࿙Εͳ͘ʯॲཧ͍ͨ͠ • ؍ • API G a tew a
yAppSyncϨʔτ੍ݶ͞Δ͜ͱͳ͕Βɺ࠷େॲཧ͕࣌ؒ30ඵͱ͍͏੍ݶ͕͋Δ • API G a tew a yʹ࡞ͨ͠WebAPIʹL a mbd a ϓϩΫγ౷߹͢ΔͱɺࠓେྔΞΫηεൃੜ࣌ɺϥ Ϝμͷಉ࣮࣌ߦʹ৮͢ΔՄೳੑ͕ग़ͯ͘Δ • API G a tew a ySQSͱ࿈ܞͰ͖ΔͷͰɺड͚͚ͨϦΫΤετΛΩϡʔʹೖΕͯॲཧΛ͢Δ • Ωϡʔʹೖ͍ͬͯΔͷͰϥϜμͷࣦഊ࣌ʹ࠶ॲཧ͕Ͱ͖Δ •
Ͱ͖Δ͜ͱɾͰ͖ͳ͍͜ͱ • Ͱ͖Δ͜ͱ • WebAPIʹର͢ΔϦΫΤετΛʮ࣌ؒΛ͔͚ͯͰʯॲཧ͢Δ͜ͱ͕Ͱ͖Δ • 30ඵΛ͑ΔॲཧΛ͢Δ͜ͱ͕Ͱ͖Δ • Ͱ͖ͳ͍͜ͱ •
ॲཧͷΤϥʔ͕ൃੜͨ࣌͠ͰΤϥʔΛฦ٫͢Δ͜ͱ͕ࠔ • ଥڠ • ଈ࣌ΤϥʔΛฦ٫͢Δ͜ͱ͕ʮඞਢʯͰͳ͚ΕɺʮॲཧΛड͚͚·ͨ͠ʯͳͲUIΛ͠ɺͷͪ΄Ͳॲཧ݁ՌΛϝʔϧ ͳΓPush௨ͳΓͰฦ٫͢Δ • SQSଓͰͳ͘ɺόϦσʔγϣϯ༻ͷϥϜμΛL a mbd a ϓϩΫγ౷߹Ͱଓ͠ɺόϦσʔγϣϯΛP a ssͨ͠ͷ͚ͩ SQSʹ͛Δ͜ͱͰ࠷ݶͷΤϥʔϋϯυϦϯάΛ͢Δํ๏͋Δʢͨͩ͠όϦσʔγϣϯϥϜμे͍ܰͷͱ͢Δʣ • ඞཁͰ͋ΕRestAPIͰͳ͘WebSocketΛ༻͢Δͷखஈͱͯ͋͠Δ
ҰఆִؒͰେྔͷσʔλΛෳͷϥϜμΛ༻͍ͯॲཧΛ͍ͨ͠ ݅ʹΑͬͯఆظ࣮ߦΛࢭΊ͍ͨ • ؍ • େྔσʔλΛॲཧ͢Δ߹ɺॲཧରͷछྨʢސ٬୯Ґɺςʔϒϧ୯ҐͳͲʣͰλεΫΛ ղɺࢄͤ͞Δ͜ͱͰޮΑ͘ॲཧ͢Δ͜ͱ͕Ͱ͖Δ • ୯ҰϥϜμͰ͋ΕɺEventBridgeΛ༻͠ఆظ࣮ߦՄೳ͕ͩɺෳͷϥϜμΛΈ߹Θͤͨ ఆظ࣮ߦॲཧΛ࡞͢Δͷຯʹࠔ
• ఆظ࣮ߦϥϜμʔʼSQSʔʼॲཧϥϜμͦͷ1ʔʼॲཧϥϜμͦͷ2ɾɾɾ • ೋॏىಈνΣοΫɺΤϥʔϋϯυϦϯάɺϦτϥΠॲཧɺetc… • ෳͷϥϜμΛΈ߹ΘͤͨॲཧΛ͍ͨ͠߹ɺStepFunctionsΛͬͯεςʔτϚγϯΛ࡞ ͢Δͷ͕ྑ͍
ߏҊ 5͓͖ʹʢސ٬orςʔϒϧor etcʣ ୯ҐͰॲཧΛ͢ΔεςʔτϚγϯ ࡞ྫ
Ͱ͖Δ͜ͱɾͰ͖ͳ͍͜ͱ • Ͱ͖Δ͜ͱ • ఆظ࣮ߦ࣌ؒΛ͑Δॲཧ͕͔͔࣌ؒͬͨͱͯ͠ೋॏݺͼग़͕͠ൃੜ͠ͳ͍ • ్தͷϥϜμͰΤϥʔ͕ى͖ͯΤϥʔϋϯυϦϯάՄೳ • ໘ͳ࿈ܞॲཧStepFunctionsଆͰ੍ޚՄೳ •
Ͱ͖ͳ͍͜ͱ • StepFunctions୯ମͰ࠷େՔಇ࣌ؒʹ੍͕͋Δ • EventBridgeͱΈ߹ΘͤͯఆظతʹεςʔτϚγϯͷࢮ׆νΣοΫΛ͢Δ͜ͱͰରॲՄೳ • ଥڠ • جຊతʹઃఆ࣮ͨ͠ߦִؒ࣌ؒͰશͯͷॲཧ͕݁͢Δఆ͕ͩɺ ॲཧ͕͔͔࣌ؒͬͨ߹ɺنఆ࣌ؒʹରσʔλͷॲཧ͕ऴΘΒͳ͍Մೳੑ͕͋Δ • StepFunctionsͷεςʔτϚγϯΛઃܭ͢Δͷׂ͕ͱ৬ਓ͕ܳඞཁɾɾɾɾ
·ͱΊ • ʮઈରʹʯམͪͳ͍γεςϜଘࡏ͠ͳ͍ɻॲཧ͕ࣦഊ͢ΔલఏͰઃܭ͠·͠ΐ͏ • ֤ίϯϙʔωϯτͰ͖Δ͚ͩૄ݁߹ʹɺඇಉظͰ࿈ܞͤ͞Δ͜ͱͰॲཧͷूதΛ͗ɺγεςϜશ ମͷݎ࿚ੑΛߴΊ·͢ • େྔॲཧͰʮಉ࣌ʯ͔ͭʮେྔʯͷϦΫΤετΛʮಉظతʹʯࡹ͘͜ͱΛආ͚ΔɻຢఘΊΔׂΓ Γ͕ॏཁͰ͢ •
ͦͦʮಉظॲཧ͕ຊʹඞཁͳ໘ͳͷ͔ʁʯʮඇಉظॲཧͰஔ͖͑ΒΕͳ͍͔ʁʯΛݕ౼͠ ·͠ΐ͏ • AWSଆ͕ఏڙ͍ͯ͠ΔػೳΛ͏͜ͱͰࣗྗ࣮Λආ͚·͠ΐ͏ • Ҏ্Λ౿·͑Δͱߴෛՙ࣌ʹ҆ఆՔಇ͠ʮམͪʹ͍͘ʯγεςϜΛߏங͢Δ͜ͱ͕ՄೳʹͳΓ·͢ • ઃܭ࣌ʮॲཧͷूதΛආ͚Δʯͱ͍͏؍Λ࣋ͬͯɺʮख࣋ͪͷΧʔυʯΛΓ·͠ΐ͏