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
盆栽転じて家具となる / Bonsai and Furnitures
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
aereal
January 17, 2025
Programming
0
6.3k
盆栽転じて家具となる / Bonsai and Furnitures
https://connpass.com/event/338668/
aereal
January 17, 2025
Tweet
Share
More Decks by aereal
See All by aereal
How to send distibuted traces to Datadog using build own OpenTelemetry-Lambda distribution
aereal
3
330
好きな技術《コト》で、 生きていく技術 / life with what you like
aereal
5
5.6k
qron: Cloud Native Cron Alternativeの今
aereal
2
3.3k
自動作曲入門 / introduction to programatic music composition
aereal
1
530k
はてなブログ タグとCDK / The epic of AWS CDK and Hatena Blog Tag
aereal
2
200k
はてなブログ タグの技術選択 / The technical details of Hatena Blog Tag
aereal
3
200k
ブログサービスのHTTPS化を支えたAWSで作るピタゴラスイッチ / The construction of large scale TLS certificates management system with AWS
aereal
3
400k
AWSではてなブログの常時HTTPS配信をバーンとやる話 / The Epic of migration from HTTP to HTTPS on Hatena Blog with AWS
aereal
14
18k
ScalaとPerlでMicroservices in production / Building microservices with Perl and Scala in production
aereal
0
5.6k
Other Decks in Programming
See All in Programming
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
130
安いハードウェアでVulkan
fadis
0
720
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
150
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.3k
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1.1k
Rethinking API Platform Filters
vinceamstoutz
0
140
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
610
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
390
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
3
1.7k
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
ロボットのための工場に灯りは要らない
watany
11
3.1k
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
1.1k
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.8k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
200
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Context Engineering - Making Every Token Count
addyosmani
9
770
Navigating Team Friction
lara
192
16k
Code Review Best Practice
trishagee
74
20k
Exploring anti-patterns in Rails
aemeredith
2
290
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
320
For a Future-Friendly Web
brad_frost
183
10k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
230
Transcript
id:aereal ຍసͯ͡Ո۩ͱͳΔ Fujiwara Tech Conference 2025 (2025-01-17)
͢͜ͱ • ࢲͱfujiwara-ware • ࢲͷ伱ؒՈ۩: frontierͷհ • ࢲͳΓͷfujiwara-wareͷਫ਼ਆੑ
• id:aereal • GitHub: aereal • @
[email protected]
• https://aereal.org/ •
Classiגࣜձࣾ ֶशPMF෦ ΞʔΩςΫτ • https://tech.classi.jp/ ࣗݾհ
Ұ൪͖ͳfujiwara-ware • github.com/fujiwara/tracer • ʮͱʹ͔͘શ෦͘Εʯ͕࣮ݱ͞Ε͍ͯΔ • ΫϥυϓϩόΠμͱͯ͠ఏڙ͠ʹ͍͘ͷΘ͔ΔͷͰ·͞ʹ伱ؒՈ۩ • ൪֎: github.com/kayac/go-katsubushi
• kayac-wareͱ͍͏͖͔͠Ε·ͤΜ͕…… • GoͰॻ͔ΕͨHTTPͰͳ͍ϓϩτίϧ (memcachedϓϩτίϧ) ΛΔσʔϞϯͷࢀߟʹͤͯ͞Β͍·ͨ͠
ࢲͱfujiwara-ware (1) • ۀͰओʹecspressoͱlambrollʹ͓ੈʹͳ͍ͬͯΔ • োରԠͰtracerʹ͓ੈʹͳͬͨ͜ͱ͠͠ • stableΓࠐΈୂɺ༨༟͕͋ΕRCࢼ͠·͢
ࢲͱfujiwara-ware (2)
ࢲͱfujiwara-ware (3) • ·͜ͽʔ͞ΜͷൃදͰstretcherͷ͜ͱΛࢥ͍ग़͠·ͨ͠ • Capistrano 2 + Gitʹൺͯ40ഒߴԽͰ͖ͯখ༂Γ •
ੈքల։͢ΔେنΣϒαʔϏεͷσϓϩΠΛࢧ͑Δٕज़ / YAPC::Asia Tokyo 2015 • https://speakerdeck.com/hatena/yapc-asia-tokyo-2015?slide=78
None
lambroll diff --ignore (1) • ࠩΛͱΔࡍɺjq (gojq) ͷΫΤϦͰࢦఆͨ͠෦Λແࢹ͢ΔΦϓγϣϯ • ίϯςφΠϝʔδͷλάͳͲ͔Γ͖ͬͨࠩΛແࢹ͔ͨͬͨ͠
• ʮࠩ͜͜ग़͍ͯΔ͚ͲେৎʯΈ͍ͨͳӡ༻Λͳ͍ͨ͘͠ • ༻్ʹΑͬͯແࢹ͍ͨ͠෦͕มΘΔͷͰ࣮ߦ࣌ʹࢦఆ͍ͨ͠
lambroll diff --ignore (2) • github.com/aereal/jsondi f • github.com/itchyny/gojqΛͬͯࠩΛग़ྗ͢ΔϥΠϒϥϦ •
jsondiff.Ignore(query)ͱ͍͏ΦϓγϣϯΛ͢ͱdel(query)ͱ͍͏ ΫΤϦʹม • ͜ΕΛͬͯࠩΛग़ྗ͢ΔΑ͏मਖ਼͞Εͨ
frontierͷհ (1) • github.com/aereal/frontier • AWS CloudFront FunctionsͷσϓϩΠπʔϧ • lambrollʹΠϯεύΠΞ͞ΕͨσβΠϯ
• AWS SDKͷͪΐͬͱݡ͍ϥού
frontierͷհ (2) • ݱ࣌ͰσϓϩΠͱઃఆͷදࣔͱطଘؔͷΠϯϙʔτ͕Ͱ͖Δ • ઃఆͷࠩද࣮ࣔ͢ΔͭΓ • ઃఆϑΝΠϧͷjsonnetαϙʔτະఆ (Βͳ͍دΓ) •
CF Functionsڽͬͨઃఆ͕ͳ͍ (Ͱ͖ͳ͍) ͷͰ͍Βͳ͍ͱࢥ͍ͬͯΔ • won't implementͰͳ͍ͷͰཁ༻్͕Θ͔Εߟ͑·͢ • KVS·ΘΓʹpain point͕͋Γͦ͏͚ͩͲΑ͘Θ͔͍ͬͯͳ͍
伱ؒՈ۩Λ࡞ͬͯΈͯ • ॱ൪ʹSDKΛݺͼग़͚ͩ͢Ͱ͍Ζ͍Ζؾ͖͕͋Δ • ͨͱ͑GetFunctionίʔυฦ͚͢ͲϝλσʔλΛؚ·ͣɺϝλσʔλ ΛಘΔʹDescribeFunctionΛݺͳ͍ͱ͍͚ͳ͍ɺͱ͔ • SDKΛோΊ͍ͯΔͱΑ͘Θ͔Βͳ͍ύϥϝʔλΛݟ͚ͭͯษڧʹͳΔ • CF
Functionsʹstage͕͋ͬͯlive͡Όͳ͍ͱಈ͔ͳ͍ͱ͔ • ࠓޙͷͭΒΈʹͳΓͦ͏ͳ (= धཁ) ʹؾ͕ͭ͘
伱ؒՈ۩ͷਫ਼ਆੑ • UNIXֶͱҟͳΔ • ݱͷWeb։ൃ͋ΓͷΛΈ߹ΘͤΔ͜ͱ͕ଟ͍ • UNIXֶͷʮͻͱͭͷ͜ͱʯ͕ࣗݾ݁తͰ͋ͬͨͷʹରͯ͠ɺ ͍·ྖҬԣஅతʹͳ͍ͬͯΔ • UNIXͰ͍͑ϓϩηεؒ௨৴͕ओͰ͋Γ௧ΈͰ͋ΔΈ͍ͨͳ͔Μ͡
djb-wareͱͷྨࣅੑ • ͨͱ͑daemontoolsʮϓϩηεΛσʔϞϯԽ͍ͨ͠ʯͱ͍͏ ྖҬԣஅతͳؔ৺ΛҰखʹ୲ͬͯ͘ΕΔ • ݸʑͷ෦ἧ͍͚ͬͯͨͲίϚϯυҰൃͰσʔϞϯΛ࠶ىಈ͢Δͱ͔ ซͤͯϩάΛϩʔςʔτ͢Δͱ͔࣮༻্͔ܽͤͳ͍ɾ͋Δͱخ͍͠ॲཧΛ ࠶ར༻Մೳʹͯ͘͠ΕΔͷ͕daemontools • ECSαʔϏεΛσϓϩΠ͢Δ࣌ɺίϯτϩʔϥΛΘͣྃΛ͍ͪͨͱ͔
ͦ͏͍͏ࡉ͔͍ͱ͜Ζʹख͕ಧ͘ͷ͕伱ؒՈ۩Ͱ͋Γfujiwara-ware
·ͱΊ • ܅͚ͩͷΦϦδφϧՈ۩Ͱ࠷ڧͷ෦Λ࡞Ζ͏ • ͨ·ʹCP͕σβΠφʔζϚϯγϣϯΛചΔ͜ͱ͋Δ͚Ͳਖ਼ϐϯΩϦ • ԿΑΓѪண͕༙͘ • ࡞Γ͜Έͷ༨͕ແݶʹ͋ΔͷͰ झຯϓϩάϥϛϯά
(= ຍ) ͷωλͱͯ͠ྑ࣭ • ͍ͭͰʹ࣮༻ੑ͓ͬͯಘ