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
SRE meetup 20190522
Search
Genki Sato
May 22, 2019
Technology
0
1.3k
SRE meetup 20190522
Genki Sato
May 22, 2019
Tweet
Share
More Decks by Genki Sato
See All by Genki Sato
DevOpsDays Tokyo
genkist
2
2.4k
レガシーシステムの再構築。システム設計からプロジェクト運用まで赤裸々に
genkist
0
1.9k
Other Decks in Technology
See All in Technology
大規模サーバーレスAPIの堅牢性・信頼性設計 〜AWSのベストプラクティスから始まる現実的制約との向き合い方〜
maimyyym
10
5k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.2k
「れきちず」のこれまでとこれから - 誰にでもわかりやすい歴史地図を目指して / FOSS4G 2025 Japan
hjmkth
1
320
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
8
1.1k
OAuthからOIDCへ ― 認可の仕組みが認証に拡張されるまで
yamatai1212
0
140
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
700
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
310
プロダクトのコードから見るGoによるデザインパターンの実践 #go_night_talk
bengo4com
1
2.7k
React19.2のuseEffectEventを追う
maguroalternative
2
520
HonoとJSXを使って管理画面をサクッと型安全に作ろう
diggymo
0
120
HR Force における DWH の併用事例 ~ サービス基盤としての BigQuery / 分析基盤としての Snowflake ~@Cross Data Platforms Meetup #2「BigQueryと愉快な仲間たち」
ryo_suzuki
0
240
エンタメとAIのための3Dパラレルワールド構築(GPU UNITE 2025 特別講演)
pfn
PRO
0
550
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Designing Experiences People Love
moore
142
24k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Mobile First: as difficult as doing things right
swwweet
225
10k
A designer walks into a library…
pauljervisheath
209
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
How to Ace a Technical Interview
jacobian
280
24k
Transcript
ZBQQMJDVMUVSF ։ൃޮΛ࠷େԽ͢Δ σϓϩΠϝϯτύΠϓϥΠϯ
ZBQQMJDVMUVSF !2 ࠤ౻ݯلʢ͞ͱ͏͛Μ͖ʣʗιϑτΤΞΤϯδχΞʗ:BQQMJ5FDI-FBE w݄ϝΨϕϯνϟʔήʔϜ։ൃ w ϒϥβܕιʔγϟϧήʔϜ։ൃ w݄ϝΨϕϯνϟʔΠϯϑϥ෦ w %#ج൫ɾήʔϜࣄۀج൫ w
Τϯλϝࣄۀج൫ɾϔϧεέΞ&$ࣄۀج൫ w݄'JOUFDIܥελʔτΞοϓ w ΥϨοτΞϓϦ։ൃɾӡ༻ w݄:BQQMJ w :BQQMJϓϥοτϑΥʔϜͷ։ൃɾӡ༻
ΞϓϦͷςΫϊϩδʔΛ։์͠ɺ ੈͷதΛͬͱศརͰշదʹɻ
Services :BQQMJैདྷͷΞϓϦࢢΛσΟεϥϓτ͢ ΔɺΞϓϦͷςΫϊϩδʔΛ։์͢Δελʔτ ΞοϓͰ͢ɻ ɹϓϩάϥϛϯάෆཁͰΞϓϦ։ൃɻٕज़ऀ ཁΒͣͰഒͷ։ൃΛ࣮ݱɻ ɹ͠Έ͍͢ײత6*ͷཧը໘͔Βɺ ୭Ͱ؆୯ʹΞϓϦΛӡ༻ཧ Mobile Technology
for ALL ʢ৽ଔ࠾༻͚ʣ ʢൢଅ͚ʣ ʢֶߍ๏ਓ͚ʣ ʢۀࢪઃ͚ʣ ۀछΛΘͳ͍ϗϦκϯλϧSaaSͱͯ͠ϓϥοτϑΥʔϜΛఏڙ
ZBQQMJDVMUVSF !5
280݅ 2,800ສ 99 ಋೖ݅ ྦྷܭΞϓϦDL αʔϏεܧଓ
ച্ߴT2D3ͷਪҠͰٸத ɿT2D3ϢχίʔϯͷSaaSاۀʹ͓͍ͯٻΊΒΕΔͷུশ 3ഒͷΛ2ɺ2ഒͷΛ3ɺTriple x 2ɺDouble x 3ͱͯ͠T2D3ͱݺΕΔ
ZBQQMJDVMUVSF νʔϜߏ !8
ZBQQMJDVMUVSF w ΤϯδχΞ໊ w J04ɾ"OESPJEɾϑϩϯτɾαʔόɾ43&ʢΠϯϑϥʣ w ϩʔϧ͝ͱʹ։ൃ͢Δ͜ͱগͳ͘جຊతʹϓϩδΣΫτ͝ͱ !9
ZBQQMJDVMUVSF w ෳͷྖҬΛΧόʔ͍ͯ͠Δϝϯόʔ͕ଟ͍ w ͷͰϩʔϧ͝ͱͷਓΛ࣭͞ΕΔͱਖ਼͑ʹ٧·Δ w ϝΠϯͷྖҬ֎ͷ͜ͱΧδϡΞϧʹखΛग़ͯ͠13͛ͨΓͯ͠·͢ !10
ZBQQMJDVMUVSF ຊ:BQQMJʹ͓͚Δ։ൃͷྲྀΕͱ σϦόϦʔߴԽͷऔΓΈʹ͍ͭͯ ͓͠͠·͢ !11
ZBQQMJDVMUVSF w ՝͕͍݄Λ͔͚ͯੵ͠ɺ։ൃޮΛམͱ͍ͯͨ͠ w ϦϦʔεखॱॻ w ͪΐͬͱͨ͠มߋ͕ࢥΘ͵োΛݺΜͩΓʢϐλΰϥεΠονʣ w ؔͳͦ͞͏ͳෳͷͪΐͬͱͨ͠มߋ͕ࢥΘ͵োΛݺΜͩΓʢࠞͥ Δͳةݥʣ
w Ұ΄Ͳલ͔ΒγεςϜͷશମϦϓϨΠεΛਐΊ͍ͯ·͢ !12
ZBQQMJDVMUVSF 43&νʔϜ͕ ͍·ߟ͍͑ͯΔ͜ͱ !13
ZBQQMJDVMUVSF w ʮػೳ։ൃΛεϜʔζʹετϨεͳ͘ਐΊΔͨΊͷΛ࡞Δʯ w αΠτ৴པੑ্ͷͨΊʹɺ·ͣ։ൃج൫ͷඋ w γεςϜϦϓϨΠεʹ͋ΘͤͯθϩϕʔεͰߏங w طଘγεςϜ৽͍͠ΈΛద༻ͨ͠Γ͍ͯ͠·͢ !14
ZBQQMJDVMUVSF ಉ͡బ౿·ͳ͍Α͏ʹ !15
ZBQQMJDVMUVSF ։ൃϑϩʔʹ߹Θͤͯ ϦϓϨΠεޙͷγεςϜͰ औΓΜͩ༰Λհ͠·͢ !16
ZBQQMJDVMUVSF !17
ZBQQMJDVMUVSF ʲ։ൃαΠΫϧʢʣʳ ԿΛ࡞Δ͔ !18
ZBQQMJDVMUVSF w ϓϩδΣΫτͷೖΓޱ w ैۀһىҊͷͷ w 4MBDL্ͷެืͰੜ·ΕΔҊ݅ɻΫϥΠΞϯτཁؚ·ΕΔɻ w ࣄۀઓུϕʔεͷͷ w
͍ΘΏΔτοϓμϯͰىҊ͞ΕΔ͜ͱ͕͓͓͍ w ։ൃɾӡ༻ϕʔεͷͷ w γεςϜϦϓϨΠεɺӡ༻վળͳͲ !19
ZBQQMJDVMUVSF ӦۀɾΧελϚʔαΫηεɾ੍࡞ͳͲ ϓϩμΫτʹؔΘ͍ͬͯΔ શ෦Ͱ༏ઌΛܾٞͯ͠ΊΔ !20
ZBQQMJDVMUVSF ʲ։ൃαΠΫϧʢʣʳ Ͳ͏࡞Δ͔ !21
ZBQQMJDVMUVSF "1*ઃܭ !22
ZBQQMJDVMUVSF w 1SPUPDPM#VGGFSTΛ࠾༻ w "1*ͷϨϏϡʔΛ࣮ʹઌߦ࣮ͯ͠ࢪ w VCFSQSPUPUPPMʹΑΔνΣοΫɺϑΥʔϚοτ w 13ݟ͘͢ͳΓ·ͨ͠ w
)5.-υΩϡϝϯτͷు͖ग़͠ߦ͍ͬͯΔ w ͕ɺ*%-ͱͯ͠༏लͳͷͰQSPUPϑΝΠϧΛݟΔ͜ͱ͕ଟ͍ !23
ZBQQMJDVMUVSF ࣮ !24
ZBQQMJDVMUVSF w -JOUνΣοΫ w ػցతʹෆ۩߹ͷԹচͱͳΔͷΛ͙ w ϑΥʔϚολͱΈ߹ΘͤͯϨϏϡʔޮVQ w -JOUͰΧόʔͰ͖ͳ͍෦໋໊نଇΛͭͬͯ͘υΩϡϝϯτԽ͍ͯ͠ Δʢ͙͢ಡΊΔαΠζʹΩʔϓ͢Δͷେࣄʣ
!25
ZBQQMJDVMUVSF w ୯ମςετ w ࠷খ୯ҐͰԿΛ͢Δؔͳͷ͔ΛѲͰ͖ΔΑ͏ʹ w ݁߹ςετ w தنɾେنͳϦϑΝΫλϦϯάΛߦ͏ࡍͷσάϨνΣοΫʹ༗༻ w
ϒϥοΫϘοΫεςετͱ࣮ͯ͠ࢪ w ςετΛલఏͱͯ͠%*͍͢͠ઃܭʹ !26
ZBQQMJDVMUVSF w 1VMM3FRVFTUʹ֤छνΣοΫΛ࿈ಈͤ͞ύε͠ͳ͍ͱϚʔδ͕Ͱ͖ͳ͍ w ݸਓͰ։ൃɾվम͢ΔͷGPSLͨ͠ϦϙδτϦͰ࡞ۀ w ςετ௨ΛͰ͖Δ w ݸਓPSHʹGPSLͨ͠ϦϙδτϦͷςετຊਓʹ͔͠௨͕͍͔ͳ͍ w
ϓϩδΣΫτͰڞ༗͍ͯ͠Δϒϥϯνͷςετશମ௨ !27
ZBQQMJDVMUVSF νΣοΫϙΠϯτͷ͕૿͑Δ͜ͱͰ Өڹൣғ͕͕Δલʹؾ͚ͮΔ !28
ZBQQMJDVMUVSF ʲ։ൃαΠΫϧʢʣʳ Ͳ͏࣭Λ୲อ͢Δ͔ !29
ZBQQMJDVMUVSF w جຊతͳϦϦʔεαΠΫϧि࣍ w ։ൃظؒنʹΑͬͯʙϲ݄·Ͱ༷ʑ w 2"ʹΑΔݕূεςοϓ w ʮ୯ମݕূʯɿҊ݅͝ͱʹߦ͏ݕূ w
ʮશମݕূʢि࣍ݕূʣʯɿϦϦʔε༧ఆͷͷ͚ͩͰͳͦ͘ͷଞશػ ೳΛཏతʹݟΔ !30
ZBQQMJDVMUVSF શମݕূͷϝϦοτ !31
ZBQQMJDVMUVSF w ʰࠞͥΔͳةݥʱͳෆ۩߹Λ୳͍͢͠ w ʰϐλΰϥεΠονʱͳෆ۩߹Λ୳͍͢͠ w ୯Ұػೳ͝ͱʹશମݕূΛߦ͏߹ͱൺֱͯ͠ΛݮͰ͖Δ w ि࣍ϦϦʔεͱ͢Δ͜ͱͰސ٬ͷΞοϓσʔτҊ͕ߦ͍͍͢ !32
ZBQQMJDVMUVSF ݕূڥΛؚΊͨ σϓϩΠࣗಈԽ !33
ZBQQMJDVMUVSF w ຊ൪ڥҎ֎ʹि࣍2"ݕূΛߦ͏εςʔδϯάڥɺ୯ମݕূΛߦ͏ݸ ผݕূڥʢηοτఔʣ͕͋Δ w ͯ͢Λ44)ͯ͠ख࡞ۀͰσϓϩΠ͢Δͷࠎ w ୯ମݕূڥͷσϓϩΠຊ൪ڥεςʔδϯάڥͱಉ༷ʹಛఆϒ ϥϯνͷQVTIΛτϦΨʔʹσϓϩΠΛߦ͏ w
γεςϜߏɺσϓϩΠϩδοΫຊ൪ͱಉͳͷͰߏσϓϩΠͷม ߋ࣌ʹͷݕূʹͳΔ !34
ZBQQMJDVMUVSF !35 ڥ ϒϥϯν ຊ൪ QSPEVDUJPO εςʔδϯά NBTUFS QGEFWSFWJFX EFQMPZQGEFWSFWJFX
QGEFWSFWJFX EFQMPZQGEFWSFWJFX QGEFWSFWJFX9 EFQMPZQGEFWSFWJFX9
ZBQQMJDVMUVSF ։ൃαΠΫϧʢʣ ϦϦʔε !36
ZBQQMJDVMUVSF w σϓϩΠؚΊͯجຊతʹݕূࡁΈ w ҆৺҆શʢࣾൺʣ w QSPEVDUJPOϒϥϯνʹϚʔδ͢Εࣗಈతʹຊ൪ڥద༻͞ΕɺϦ Ϧʔεྃ !37
ZBQQMJDVMUVSF ։ൃαΠΫϧʢʣ Πϯϑϥߏཧ !38
ZBQQMJDVMUVSF w 5FSSBGPSNΛར༻͍ͯ͠Δ w جຊతʹ*".ͳͲΛؚΊͨॳظߏஙΛओ؟ʹஔ͍͍ͯΔ w ʑͷӡ༻ͷதͰมߋ͕ݟࠐ·ΕΔͷΞϓϦέʔγϣϯͷϦϙδτϦ ʹಉࠝ w ྫɿ&$4ͷλεΫఆٛɺFOWPZZBNMɺ%PDLFSpMFͳͲ
w σϓϩΠ্ͷ߹͋Δ͕ɺΠϯϑϥ໘ͷมߋΞϓϦέʔγϣϯίʔυ ͱಉ༷ͷϑϩʔʹࡌͤΒΕΔϝϦοτେ͖͍ !39
ZBQQMJDVMUVSF ։ൃαΠΫϧʢʣ ܭଌɾࢹ !40
ZBQQMJDVMUVSF w &&ςετ w ຊ൪ڥʹରͯ͠ఆظతʹ࣮ΛͬͨࣗಈςετΛ࣮ࢪ w γεςϜϦιʔεɺϩάࢹ w %BUBEPH "1.
Λར༻ w ͔Ώ͍ͱ͜Ζ3FEBTIࣗલεΫϦϓτʹΑΔࢹ w ϩάج൫ w োରԠɺ#*తͰ#JH2VFSZ 3FEBTIΛར༻ !41
ZBQQMJDVMUVSF γεςϜߏ !42
ZBQQMJDVMUVSF !43
main with SQLite SQLite wrappter app envoy CMS app Client
˞؆ུԽͨ͠ߏਤͰ͢ -JOU #VJME (JU1VTI -JOU 5FTU #VJME %FQMPZ -JOU 5FTU #VJME %FQMPZ -JOU 5FTU #VJME %FQMPZ QSPUPCVG DNT BQQ TRMJUFXSBQ
ZBQQMJDVMUVSF ·ͱΊ !45
ZBQQMJDVMUVSF w ։ൃޮΛ͋͛ΔͨΊͷγεςϜతͳऔΓΈΛհ͠·ͨ͠ w γεςϜͰ։ൃΛαϙʔτ͢Δ͜ͱͰ։ൃޮ্Λࢦ͍ͯ͠·͢ w μΠδΣετʹ͍ۙհͩͬͨͷͰؾʹͳΔ෦͕͋Δํ͜ͷ͋ͱʂ !46
ҰॹʹΈɺ᛭ୖຏͯ͘͠ΕΔ ؒΛืू͍ͯ͠·͢ʂ 5IBOLZPV