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
チームの課題をサーバーレスで解決 Backlog と Zendesk の繋ぎ方
Search
Yuji Shimoda
October 11, 2019
Technology
1
2k
チームの課題をサーバーレスで解決 Backlog と Zendesk の繋ぎ方
AWS総合支援サービス「クラスメソッドメンバーズ」のサポートチームが抱えていた課題を、サーバーレスで解決した際のアレコレを赤裸々にご紹介します。
Yuji Shimoda
October 11, 2019
Tweet
Share
More Decks by Yuji Shimoda
See All by Yuji Shimoda
チームの課題をサーバーレスで解決 プロジェクト管理ツール「Backlog」とカスタマーサービスシステム「Zendesk」の繋ぎ方
yuji_shimoda
0
2.4k
Higobashi.aws 第7回 AWS コンテナ実践勉強会 低レイヤー視点から読み解くコンテナ入門
yuji_shimoda
7
2.2k
higobashi.aws 第1回 AWS re:Invent 2017 報告会 AWS Fargate と ECS タスクネットワークのご紹介
yuji_shimoda
0
1.1k
Other Decks in Technology
See All in Technology
Exadata Database Service on Dedicated Infrastructure セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
1
330
はじめての転職講座/The Guide of First Career Change
kwappa
5
4.4k
あとはAIに任せて人間は自由に生きる
kentaro
3
670
Amazon Q と『音楽』-ゲーム音楽もAmazonQで作成してみた感想-
senseofunity129
0
170
モノレポにおけるエラー管理 ~Runbook自動生成とチームメンションの最適化
biwashi
0
380
意志の力が9割。アニメから学ぶAI時代のこれから。
endohizumi
1
110
Telemetry APIから学ぶGoogle Cloud ObservabilityとOpenTelemetryの現在 / getting-started-telemetry-api-with-google-cloud
k6s4i53rx
0
160
データモデリング通り #2オンライン勉強会 ~方法論の話をしよう~
datayokocho
0
190
Delegate authentication and a lot more to Keycloak with OpenID Connect
ahus1
0
240
事業特性から逆算したインフラ設計
upsider_tech
0
240
MySQL HeatWave:サービス概要のご紹介
oracle4engineer
PRO
3
1.6k
【OptimizationNight】数理最適化のラストワンマイルとしてのUIUX
brainpadpr
2
560
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Done Done
chrislema
185
16k
Making Projects Easy
brettharned
117
6.3k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Faster Mobile Websites
deanohume
309
31k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
Transcript
νʔϜͷ՝ΛαʔόʔϨεͰղܾϓϩδΣΫτཧπʔϧ ʮ#BDLMPHʯͱΧελϚʔαʔϏεγεςϜʮ;FOEFTLʯͷܨ͗ํ "84ࣄۀຊ෦ɹΦϖϨʔγϣϯ෦ ొஃऀԼా༞࢜
DNEFWJP
ຊ͓͢͠Δ͜ͱɺ͠ͳ͍͜ͱ w͓͢͠Δ͜ͱ wࣾͷۀΛվળ͢ΔࡍͷΞϓϩʔνɺϚΠϯυͳͲ wαʔόʔϨε։ൃ5JQT w4FSWFSMFTT'SBNFXPSL1ZUIPOίʔυͷ؆୯ͳ࣮ྫ wαʔόʔϨε։ൃ࣌ʹૺ۰ͨ͠Τϥʔͱରॲ๏ͷ؆୯ͳ͝հ w͓͠ͳ͍͜ͱ wαʔόʔϨεͷ֓೦આ໌
w֤"84αʔϏεͷར༻ํ๏ৄࡉઆ໌ͳͲ w4FSWFSMFTT'SBNFXPSL։ൃݴޠʹؔ͢Δৄࡉͳઆ໌
8IPBSFZPV ݄Ϋϥεϝιουೖࣾ "84༻ྺɺΫϥεϝιουࡏ੶ظؒͱಉ͡ ৬ྺ ೋڃඋ࢜ʢϝΧχοΫʣ ډञళ 6/*9ͷԾԽٕज़ͷαϙʔτɾΤϯδχΞ ΦϖϨʔγϣϯ෦ॴଐ
,"*;&/5FBNϦʔμʔ ̐ࣇͷύύ ɺਓੜॳͷҭࣇٳՋऔಘࡁΈ Լాɹ༞࢜ʢ̏̕ࡀʣ
"HFOEB w֤αʔϏεͷ͝հ wνʔϜͷ՝ͱʁ w՝ղܾͷΞϓϩʔν w࣮ࡍʹͬͯΈͨ wαʔόʔϨεͰ։ൃͨ͠αʔϏεͷ͝հ wαʔόʔϨε։ൃ5JQT w։ൃ࣌ʹૺ۰ͨ͠Τϥʔͱରॲ๏
w·ͱΊ
֤αʔϏεͷ͝հ
#BDLMPHͷ͝հ wOVMBC͕ࣾ։ൃ͢Δ4BB4 w༷ʑͳۀछͰར༻͞Ε͍ͯΔϓϩδΣΫτཧπʔϧ w՝όάόʔδϣϯཧγεςϜͱͯ͠ར༻Մೳ
;FOEFTLͷ͝հ w;FOEFTL͕ࣾ։ൃ͢Δ4BB4 wΧελϚʔαϙʔτۀʹඞཁͳ͕༻ҙ͞Ε͍ͯ·͢ w;FOEFTL4VQQPSU w;FOEFTL(VJEF w;FOEFTL$IBU w;FOEFTL5BML w;FOEFTL&YQMPSF
0534ͷ͝հ w044ͱͯ͠։ൃ͞Ε͍ͯΔνέοτཧγεςϜ wϝʔϧͷো௨͍߹ΘͤͷཧγεςϜͱͯ͠ར༻ wΠϯγσϯτཧ
֤αʔϏεͰͷ͍͚ wϝϯόʔζͰఏڙ͢Δ"84αϙʔτɺجຊతʹɹɹɹΛར༻ wҰ෦ͷސ٬ΛରʹɹɹɹɹΛར༻ͨ͠αϙʔτఏڙ wϝʔϧʹΑΔ͍߹ΘͤΛཧ͢ΔͨΊʹ0534Λར༻
Ϋϥεϝιουɹϝϯόʔζͷ͝հ w"84૯߹ࢧԉαʔϏε wԁݐͯͷٻॻ͍αʔϏεʢٻߦʣ wར༻අͷׂҾ͖αʔϏεʢҰPS&$ɾ$%/ׂҾ͖ʣ w"84αϙʔτʢ֤छਃߦٕज़తͳαϙʔτʣ wϓϨϛΞϜαʔϏεʢίϯαϧςΟϯάߏஙࢧԉӡ༻ߦFUDʣ
ϝϯόʔζͷ"84αϙʔτମ੍ʢYʣ
νʔϜͷ՝ͱʁ
લఏ݅ w#BDLMPHͷ՝ߋ৽ʹΑΔϝʔϧ௨ΛશͯνέοτԽ w͍߹ΘͤҎ֎ͷ༰ଟؚΉ wͦͷνέοτΛ ໊Ͱ༗ਓࢹ wϝϯόʔζαʔϏεٸதʢલൺഒ㽉 wࢹνέοτൺྫͯ͠㽉 wνʔϜͷਓһɺαʔϏεنͷʹൺྫ͠ͳ͍
݁Ռ ༗ਓࢹνέοτͷ߹ܭ͕݅ 1700݅Λ͑Δʢ࣮ʣ
՝ղܾͷΞϓϩʔν
՝ղܾͷΞϓϩʔν ঢ়گΛѲ͢ΔͨΊʹใऩूʢϝϯόʔͷώΞϦϯάʣ σʔλʹجͮ͘ݱঢ়ੳ ՝ͷચ͍ग़͠
ऩूσʔλ͕ෆ͢Δ߹ɺԾఆʹجͮ͘՝ͰߏΘͳ͍ ͷ՝ʹجͮ͘ࢪࡦͷݕ౼ͱظ͢ΔޮՌͷ֬ೝ ͷࢪࡦʹ5SZ͢ΔɹˠʹΔ
,"*;&/5FBNͷجຊํ ࠷খݶͷίετͰ࠷େݶͷՌΛಘΔ Think Big, Start Small, Scale Fast
ݸਓతͳجຊํ ސ٬ʹՁΛఏڙ͍ͯ͠ͳ͍࡞ۀΊΔ ͦΕҎ֎ͷ࡞ۀޮԽɾࣗಈԽΛݕ౼
νʔϜͷ՝ͱʁʢԾఆʣ w༗ਓࢹʢ#BDLMPH՝ϕʔεʣͷνέοτ͕ଟ͍ wঢ়گੳɺରԠϑϩʔͷݟ͕͠Ͱ͖͍ͯͳ͍ wࢹνέοτʹຒΕͨॏཁͳ՝ͷߋ৽Λଈ࠲ʹݕͰ͖ͳ͍ wαϙʔτ࣭ͷԼʢ༗ਓࢹʹΑΔฐʣ w༗ਓࢹͷίετʢ࡞ۀෛՙʣ͕ߴ͍ wਓతࢿݯوॏʢແବݣ͍ग़དྷͳ͍ʣ
࣮ࡍʹͬͯΈͨ
࣮ࡍʹͬͯΈͨ wνʔϜϝϯόʔʹώΞϦϯά wେྔʹ͋Δࢹνέοτɺ͍͔ͭ͘ͷಛఆϓϩδΣΫτىҼ wϝʔϧ௨ઃఆͷݟ͠ʹΑΓঢ়گ͕վળ͞Εͦ͏ wࣗࣾอ༗ͷ#BDLMPHϓϩδΣΫτͰͳ͘ɺސ٬อ༗ͷͷ wʙސ٬ͷଧˍࣗࣾϓϩδΣΫτͷ୨Է͠ wސ٬ͱௐྃ͠ɺϝʔϧ௨ͷઃఆݟ͠ʹޭ w݅ˠ݅ʢࢹνέοτΛҰ୴ɺϦηοτʣ
Ұ࣌తʹվળ͕ͨ͠ɺࠜຊతͳʢ༗ਓࢹରԠʣະղܾ
࣮ࡍʹͬͯΈͨʢ͖ͭͮʣ wͦͷଞͷํ๏Λࡧ͢Δ৽ن։ൃ͕ඞཁͱ͍͏݁ʹ w1P$։ൃʹணखʢͬ͘͟Γ)͘Β͍ʣ w1P$खԠ͕͑͋ͬͨͷͰɺϓϩτλΠϓ։ൃΛਐΊΔ w4FSWFSMFTT'SBNFXPSLΧελϜυϝΠϯԽʢ)͘Β͍ʣ w࣮࣭िؒఔͰɺຊ൪ಋೖʢ༗ਓࢹରԠͱฒʣ wࣾͷސ٬αʔϏεಋೖͷ͝ҊΛૹ wࣾϑΟʔυόοΫΛݩʹαʔϏεվળΛਵ࣮࣌ࢪ
w#BDLMPH՝ͷ༗ਓࢹରԠΛશഇࢭ
݁Ռ 15/(1ਓ)ͷվળޮՌ͋Γ ܭ1࣌ؒ/(4ਓ)ͷݮʹͭͳ͕ͬͨ ͭ·Γɺ20࣌ؒ/݄ɺ240࣌ؒ/
αʔόʔϨεͰ։ൃͨ͠αʔϏεͷ͝հ
αʔϏεಋೖલ ᶃ ᶄ ᶅ ᶆ
αʔϏεಋೖલ
αʔϏεಋೖޙ ᶃ ᶄ ᶅ ᶆ ᶇ
#BDLMPHϔϧϓσεΫ࿈ܞαʔϏε w#BDLMPHͷඪ४ػೳͰ͋Δ8FCIPPL Λར༻ w #BDLMPH՝ͷߋ৽ใΛࢦఆ63-)5511045͢Δػೳ w8FCIPPLΠϕϯτΛ"1*(BUFXBZͰड͚Δ w-BNCEB 1ZUIPO
Ͱղੳ͠ɺඞཁʹԠͯ͡;FOEFTL"1*Λίʔϧ
#BDLMPHͷ8FCIPPLΠϕϯτʢαϯϓϧʣ
#BDLMPHͷ՝ʢςετىථͨ͠αϯϓϧʣ
;FOEFTLͷνέοτʢςετىථͨ͠αϯϓϧʣ
ࣾ4MBDLʢςετىථͷ௨αϯϓϧʣ
ར༻͍ͯ͠Δ"84αʔϏε w"NB[PO"1*(BUFXBZ w"NB[PO71$ w/"5(BUFXBZ&MBTUJD*171$&OEQPJOU w"NB[PO%ZOBNP%# w"NB[PO3PVUF w"NB[PO$MPVE8BUDI w"84-BNCEB
w"844FDSFUT.BOBHFS w"84$FSUJpDBUF.BOBHFS
αʔϏεߏͷৄࡉ
αʔϏεߏͷৄࡉ wίʔυنɺͬ͘͟Γߦఔʢ:".-ؚΊߦ͘Β͍ʣ
αʔϏε༷ʢϓϩτλΠϓʣ w#BDLMPH՝ͷ୲ऀ͕ಛఆϢʔβʔ ͷ߹ʹ ;FOEFTLͷνέοτΛ࡞͠ɺ#BDLMPH՝͕ྃ͢Δ·Ͱ ;FOEFTLͷνέοτΛߋ৽ʢಉظʣ͢Δɻ w
ΦϖϨʔγϣϯνʔϜ#BDLMPHϢʔβʔ ʢҎ߱ɺ$.ΦϖϢʔβʔʣ
Ҿ͖ࢉͷඒֶ ෆཁͳػೳపఈతʹ͗མͱ͢
ϓϩτλΠϓ։ൃதͷ৺ಘ w༨ܭͳػೳΛՃ͠ͳ͍ʢՃ͠Α͏ͱ͠ͳ͍ʣ wͻΐͬͱͨ͠ΒඞཁʹͳΔ͔͠Εͳ͍ػೳʢଟʣඞཁͳ͍ wᘳΛࢦ͞ͳ͍ w్தͰϦϑΝΫλϦϯάͨ͘͠ͳΔʢ͔͠Εͳ͍ʣ͚Ͳզຫ͢Δ wϓϩδΣΫτ͕࠳ͨ͠߹ɺίʔυΛࣺͯΔ͜ͱʹͳΔ͔Β wར༻ऀʢνʔϜϝϯόʔސ٬ʣͱަব͢Δ͜ͱΛڪΕͳ͍ wҙࣄ੍߲ݶΛઃ͚Δ͚ͩͰɺ༷͕γϯϓϧʹͳΔ
wͭ·Γɺ։ൃΛେ෯ʹݮͰ͖5SZͷαΠΫϧΛૣΊΒΕΔ
ϓϩτλΠϓ։ൃதʹϝϯόʔ͔Βͬͨίϝϯτ wސ٬͕#BDLMPH՝୲ऀΛࢦఆͤͣʹґཔͯ͘͠Δ͜ͱ͕͋Δ ݱঢ়ͷ༷ͩͱ͍উख͕ѱͦ͏ w#BDLMPH՝ʹෳͷґཔࣄ߲͕هࡌ͞Ε͓ͯΓɺ՝ͷ୲ऀ͕ $.ΦϖϢʔβʔͰͳ͘ɺ՝ͷຊจʹCZOBNFͰґཔ͞ΕΔ
߹ͷέΞ͕ग़དྷͳ͍ɻػೳΛՃͨ͠ํ͕ྑ͍ͷͰʁ wԼా͞Μ։ൃऀ͖͡Όͳ͍Ͱ͢Ͷʢ͍͍ҙຯͰʣ Ϛωʔδϟʔ͖Ͱ͢Ͷɻ
%POFJTCFUUFSUIBOQFSGFDU
αʔόʔϨε։ൃ Tips
ΞΫηεݩʢιʔε*1ʣΛߜΓ͍ͨ wSFTPVSDF1PMJDZΛ͏
ΫϨσϯγϟϧใͷཧʁ w"844FDSFUT.BOBHFSͬͯΔ wTFSWFSMFTTZNM[FOEFTLQZ
ΧελϜυϝΠϯ͑Δʁ wόʔδχΞ෦ VTFBTU Ͱ"$.ূ໌ॻൃߦͯ͠ "1*(BUFXBZίϯιʔϧͰΧελϜυϝΠϯ໊Λઃఆͨ͠Β Τοδ࠷దԽͷΧελϜυϝΠϯ͕͑·͢ɻ
https://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/how-to-edge-optimized-custom-domain-name.html
ΧελϜυϝΠϯͰෳͷ"1*͑Δʁ wϕʔεύεϚοϐϯάͷઃఆΛͨ͠Β͑·͢ɻ wIUUQTCBDLMPHTVQQPSUDMBTTNFUIPEJOGPEFW wIUUQTCBDLMPHTVQQPSUDMBTTNFUIPEJOGPDN
ϝϞϦׂͯྔͷݟੵΓͲ͏ͯ͠Δʁ w$MPVE8BUDI-PHT*OTJHIUTͰ3&1035Λ֬ೝ https://medium.com/foxintelligence-inside/how-we-reduced-lambda-functions-costs-by-thousands-of-dollars-8279b0a69931
։ൃ࣌ʹૺ۰ͨ͠Τϥʔͱରॲ๏
։ൃ࣌ʹૺ۰ͨ͠Τϥʔͱରॲ๏ w$MJFOU&SSPS wكʹ-BNCEB͕JOWPLF͞Εͳ͍
$MJFOU&SSPS wࣄɿ w;FOEFTL"1*ίʔϧ࣌ʹ$MJFOU&SSPS͕ൃੜ w%FWڥͰԿճ͔ൃੜʢ1SPEڥͰҰ͚ͩൃੜ͍ͯͨ͠ʣ w۩ମతʹɺҎԼͷΤϥʔϝοηʔδͱڞʹ"1*$BMM͕ࣦഊ͢Δ wSFRVFTUTFYDFQUJPOT)551&SSPS$MJFOU&SSPS 'PSCJEEFOGPSVSM
IUUQTTVCEPNBJO[FOEFTLDPNBQJWUJDLFUTKTPO
$MJFOU&SSPS wݪҼɿ w;FOEFTLɺαʔυύʔςΟͷεύϜϑΟϧλʔΛ ར༻͓ͯ͠ΓCBESFQVUBUJPOͱผ͞Εͨ*1ΞυϨε͔Βͷ ΞΫηεڐՄ͞Ε͍ͯͳ͔ͬͨ w-BNCEBʹׂͯΒΕΔάϩʔόϧ*1ɺෆఆ
$MJFOU&SSPS wରॲ๏ɿ w71$-BNCEBԽ w/"5(BUFXBZ&MBTUJD*1ʹΑΔάϩʔόϧ*1ͷݻఆ wTFSWFSMFTTZNM
كʹ-BNCEB͕JOWPLF͞Εͳ͍ wࣄɿ w8FCIPPLΠϕϯτͷϦΫΤετ"1*(BUFXBZʹ౸ୡͯͨ͠ w"1*(BUFXBZͰ99&SSPSͷهΛ؍ଌ w-BNCEB͕JOWPLF͞Εͨܗͳ͠ wݪҼɿ wෆ໌ wࢀߟใʣ"1*(BUFXBZͷ99&SSPSൃੜස͕গͳ͚Εɺ
ʢҰ࣌తͳΤϥʔͰ͋Δ߹ʣϦτϥΠਪͷΑ͏Ͱ͢
كʹ-BNCEB͕JOWPLF͞Εͳ͍ w՝ɿ w#BDLMPHͷ৽نطଘ՝ͷߋ৽ʹؾ͚ͳ͍ wରԠ͕ΕΔͷͰαϙʔτ࣭͕ѱԽ͢Δʢக໋తʣ wఆ͞ΕΔൃੜύλʔϯ w৽نͷ#BDLMPH՝͕ސ٬ʹΑΓ࡞͞Εͨύλʔϯ wطଘͷ#BDLMPH՝Λސ٬͕ߋ৽ͨ͠ύλʔϯ wˠࣄൃੜ࣌ʹαϙʔτϝϯόʔ͕ؾͨ͘ΊͷΈ͕ඞཁ
৽نͷ#BDLMPH՝͕ސ٬ʹΑΓ࡞͞Εͨύλʔϯ wରॲ๏ɿ wִ࣌ؒؒʹ࣮ߦ͞ΕΔόονδϣϒΛՃͰ։ൃ w#BDLMPH"1*ͰҎԼͷ՝Λநग़ w୲ऀ͕$.ΦϖϢʔβʔ wεςʔλε͕ະରԠ w%ZOBNP%#ςʔϒϧʹΞΠςϜͷొ༗ແΛνΣοΫ wΞΠςϜ͕ొ͞Ε͍ͯͳ͍߹ʹɺ4MBDL௨͢Δ
طଘͷ#BDLMPH՝Λސ٬͕ߋ৽ͨ͠ύλʔϯ wରॲ๏ɿ w;FOEFTLࣗಈԽͷΈͰରԠ͢Δ wอཹεςʔλεมߋdޙʹɺڧ੍తʹεςʔλεมߋ͢Δ wཧ༝ͱͯ͠ɺεςʔλεͷᴥᴪ͕ൃੜ͍ͯ͠ΔͨΊ w#BDLMPH՝ɿॲཧࡁΈˠະରԠ w;FOEFTLνέοτɿอཹதͷ··ʢຊˠΦʔϓϯʣ
·ͱΊ
·ͱΊ wখ͘͞5SZ͢Δࡍɺ༷ػೳཁ݅ΛϛχϚϜʹ͢Δ͜ͱ wͪΐͬͱͨ͠αʔϏεͰ͋ΕɺαʔόʔϨε૬ੑྑ͠ wϓϩτλΠϓنͷখ͍͞αʔϏεΛ։ൃ͢Δࡍɺ ·ͣϑϧϚωʔδυαʔϏεߏΛݕ౼ͯ͠ཉ͍͠ w"1*(BUFXBZ -BNCEB
%ZOBNP%# wࣾվળɺͪΐͬͱͨ͠ΞΠσΞͱগ͠ͷίʔυͰ࣮ݱͰ͖Δ w͘͠ߟ͑ͣʹɺ·ͣ5SZʂ
Let’s enjoy Serverless !!
None