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
マルチクラウドでいろいろ「がおって」みた / serverless-200125
Search
gaomar
January 25, 2020
Technology
670
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
マルチクラウドでいろいろ「がおって」みた / serverless-200125
Serverless Meetup Kobe #1登壇資料です。
https://serverless.connpass.com/event/157159/
gaomar
January 25, 2020
More Decks by gaomar
See All by gaomar
PAD・enebular・Lexで 交通費を確認してみた / enebular-200902
gaomar
0
250
よくあるご質問をノーコードで試してみた / enebular-210210
gaomar
0
260
enebularで湯婆婆をノーコードで実装してみた / enebular-201201
gaomar
0
1.2k
CLOVA OCRをenebularで連携してみた / yurufuwaml-201104
gaomar
0
440
会社の受付システムをenebularでやってみる / 0yenRPA-201006
gaomar
0
280
ゆるふわマシンラーニング vol.4 / yurufuwaml-200702
gaomar
0
320
Makecode Arcadeハンズオン資料 / makecodearcade-0625
gaomar
2
580
M5StickCをLINE Beacon化してみた / m5stack-200207
gaomar
0
810
スマートスピーカーミーティング 20200130 / ssmtg-200130
gaomar
0
550
Other Decks in Technology
See All in Technology
Model Studio CLI × Token Plan
maigo999
0
200
MIXIで活躍できるエンジニアを 若手社員目線で考えてみる
mixi_engineers
PRO
0
110
AIに狂うスタートアップが、あえて「人との協働」に全振りした新卒エンジニア研修 / New Graduate Engineer Training at a Startup Accelerating AI Adoption
ohnoeight
0
160
属人化を叩き割れ!「制作加速」と「安定化」の矛盾を打破する:8年目プロダクトが辿り着いた「ミスが起こり得ない」アセット制作フローの全貌
gree_tech
PRO
0
120
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.2k
Kiro Crew入門 - 常駐エージェントの仕組みと使いどころ / Intro to Kiro Crew
k_adachi_01
1
620
AIコーディングの次。コードレビューと理解負荷を解消して組織の開発生産性を高める
moongift
PRO
2
2.7k
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
250
Go 1.27 の標準パッケージに uuid が入った!のでいろいろ喋る / go_127_std_go_uuid
convto
3
540
【GCC2026】鉄拳8でのVFX開発事例
bandainamcostudios
PRO
0
120
Genie Codeハンズオン応用編
taka_aki
0
130
Bits Agent Builder の⼊⾨と活⽤事例
nulabinc
PRO
0
250
Featured
See All Featured
The Invisible Side of Design
smashingmag
301
52k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.1k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
170
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
500
How to train your dragon (web standard)
notwaldorf
97
6.8k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
260
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
220
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
550
Fireside Chat
paigeccino
42
4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
650
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
290
Transcript
TFSWFSMFTTLPCF ϚϧνΫϥυͰ͍Ζ͍Ζ ʮ͕͓ͬͯʯΈͨ M5
TFSWFSMFTTLPCF ࣗݾհʢ͕͓·Δʣ ॴଐɿגࣜձࣾΞΠΤϯλʔɹେࡕࢧళ ɹɹɹ3%ɹೖࣾ ɹɹɹεϚʔτεϐʔΧʔΤόϯδΣϦετ ɹɹɹ-*/&"1*&YQFSUʢʙʣ ɹɹɹ"MFYB$IBNQJPOʢʙʣ ۀɿ"5-BCPɾ͕͓·Δक़ओ࠵ ɹɹɹεϚʔτεϐʔΧʔݚڀ։ൃ ɹɹɹ31"ݚڀ։ൃ
ߴഅɹయ !HBPNBS ͖ͳݴ༿ɿͶ͐$MPWB ͔ͨ͏·ɹͻΖͷΓ
TFSWFSMFTTLPCF εϚʔτεϐʔΧʔΞϓϦ։ൃೖ େධൃചதʂ
TFSWFSMFTTLPCF ຊ
TFSWFSMFTTLPCF ʮ͕͓ͬͯΔʯͱ ͋Γͱ͋ΒΏΔΫϥυαʔϏεΛͱʹ͔ͪ͘͝Ό·ͥʹͯ͠ Կ͔ͩྑ͔͘Βͳ͍͚Ͳɺ ࠷ऴతʹಈ͍ͯΈΜͳϋοϐʔʹͳΕΔ͜ͱ ཁ͢Δʹນͷหతͳҙຯ߹͍
TFSWFSMFTTLPCF "MFYB$IBNQJPOͷϖʔδʹ("͞Εͨʂ
TFSWFSMFTTLPCF ͕͓ͬͯΔͦͷ
TFSWFSMFTTLPCF ౙٳΈͰՋͩͬͨͷͰ 1PXFS"VUPNBUFͬͯ -*/&#PUΛ̏ͭ࡞ͬͯΈͨ
TFSWFSMFTTLPCF 1PXFS"VUPNBUFͱ
TFSWFSMFTTLPCF 0$3#PU $PNQVUFS7JTJPOΛར༻ͯ͠-*/&ʹ্͛ͨը૾ͷ தʹ͋ΔจࣈྻΛೝࣝͯͦ͠ͷ݁ՌΛฦ͢ɻ ೝࣝߴΊ͕ͩɺखॻ͖จࣈͷೝ͕͔ࣝͳΓ Լͨ͠
TFSWFSMFTTLPCF ༁#PU 5FYU5SBOTMBUPSΛར༻ͯ͠#PUʹ͛ͨຊޠΛ ӳޠʹ༁ͯ͠ฦͯ͘͠ΕΔɻ Ұ࣌ظʹͳͬͨࡖϚοεϧΛࢼͨ͠Βͬͱ ΧΦεͳ͜ͱʹͳ͍ͬͯͨ͆
TFSWFSMFTTLPCF $VTUPN7JTJPOΛར༻ͯ͠#PUʹ͛ͨը૾͔Β ࢦఆͨ͠λά໊Λฦ͢ɻ ίʔϯϑϨʔΫͷը૾Λ͛ΔͱίʔϯϑϨʔΫ ͔Ͳ͏͔ఆͯ͘͠ΕΔ ྨث#PU
TFSWFSMFTTLPCF (PPHMFͷ5FBDIBCMF.BDIJOF͕Ϡό͍ʂ
TFSWFSMFTTLPCF
TFSWFSMFTTLPCF ͜ΕΛͬͨϋϯζΦϯΛདྷ݄ߦ͍·͆͢ ຬһޚྱʂ
TFSWFSMFTTLPCF 0$3#PU ༁#PU ྨث#PU
TFSWFSMFTTLPCF ͕͓ͬͯΔͦͷ M5
TFSWFSMFTTLPCF #MVFUPPUIൃ৴ػͰ-*/&ΞϓϦΛܦ༝ͯ͠ ࢦఆͨ͠8FCIPPLઌʹ͍ۙͮͨਓͷใΛ ඈ͢͜ͱ͕Ͱ͖Δ
TFSWFSMFTTLPCF M5 .4UJDL$ ɾ&41ଂ ɾY5'5Χϥʔӷথ ɾN"I-J1PόοςϦʔ ɾ(SPWFϙʔτ ɾ.#ϑϥογϡϝϞϦ ɾ࣠ηϯα ɾ=
TFSWFSMFTTLPCF -*/&4JNQMF#FBDPOͱ -*/&4JNQMF#FBDPOͱɺ-*/&#PU։ൃऀ͚ͷϏʔίϯ σόΠε༷Ͱ͢ɻ-*/&4JNQMF#FBDPO#MVFUPPUI -PX&OFSHZ ҎԼɺʮ#-&ʯͱ͍͏ ͷ༷ʹͱ͍͓ͮͯ Γɺ൚༻ͷσόΠεͰ-*/&#FBDPOͷαʔϏεΛར༻͢Δ͜ ͱΛՄೳͱ͠·͢ɻ IUUQTHJUIVCDPNMJOFMJOFTJNQMFCFBDPOCMPCNBTUFS3&"%.&KBNE
TFSWFSMFTTLPCF ͔͜͜Β-*/&#PUͱඥ͚ͯ*%Λൃߦ͢Δ͚ͩ IUUQTNBOBHFSMJOFCJ[CFBDPOSFHJTUFS
TFSWFSMFTTLPCF -*/&#FBDPOΛ༗ޮԽ
TFSWFSMFTTLPCF Ͱ͖ͨͷͪ͜Β
None
TFSWFSMFTTLPCF ΞʔΩςΫνϟ M5 ʗडͨ͠Αʘ ʘ͕͓·Δ͕དྷͨΑʗ 66*% FOUFS 66*%
TFSWFSMFTTLPCF ͕͓ͬͯΔͦͷ
TFSWFSMFTTLPCF ͱ 23ίʔυܾࡁΦϯϥΠϯγϣοϐϯά ʹͬͨΓͰ͖ΔεϚϗܾࡁαʔϏε །Ұ։ൃ༻4%,͕ެ։͞Ε͓ͯΓɺ ୭Ͱ։ൃΛ࢝ΊΔ͜ͱ͕Ͱ͖Δ
TFSWFSMFTTLPCF 31"πʔϧͷҰछ ࡞ۀۀΛࣗಈԽ͢ΔϩϘοτΛ։ൃ͢Δπʔϧ
TFSWFSMFTTLPCF ΦʔέετϨʔλʔ͕͋Δ
TFSWFSMFTTLPCF 6J1BUI0SDIFTUSBUPSͱ ɾδϣϒͷεέδϡʔϧཧ ɾ౷߹ӡ༻ཧ ɾ෦౷੍ ɾηΩϡϦςΟରࡦ ɾॊೈͳ֦ுੑ
TFSWFSMFTTLPCF ॊೈͳ֦ுੑ ɾ31"ͷཧػೳΛ3&45"1*ͱͯ͠ެ։ ɾϩϘͷىಈࢦ͕ࣔ؆୯ʹͰ͖Δ ɾ֎෦ͷ༷ʑͳαʔϏεͱ࿈ܞ͢Δ͜ͱ͕Մೳʂ
TFSWFSMFTTLPCF Ͱ͖ͨͷͪ͜Β
TFSWFSMFTTLPCF IUUQTZPVUVCF:#7TSMH
TFSWFSMFTTLPCF ΞʔΩςΫνϟ ΦʔέετϨʔλʔ ʘܾࡁใೖྗʂʗ -*/&1BZ ܾࡁ (JU)VC
TFSWFSMFTTLPCF -*''ʢ-*/&'POUFOE'SBNFXPSLʣ -*/&ΞϓϦͰಈ࡞͢ΔΣϒΞϓϦͷϓϥοτϑΥʔϜ ϢʔβʔใΛ׆༻ͨ͠ػೳΛఏڙͨ͠Γɺ ϢʔβʔͷΘΓʹϝοηʔδΛૹ৴ͨ͠ΓͰ͖·͢ ˞-*''ܦ༝Ͱ-*/&ͷϓϩϑΟʔϧ͕औಘՄೳ ˞-*''W͔Β8FCܦ༝Ͱར༻Մೳʹ
TFSWFSMFTTLPCF 6J1BUIϑϩʔਤ ύϒϦογϡͯ͠ ΦʔέετϨʔλʔʹΞοϓ͢Δ
TFSWFSMFTTLPCF ΦʔέετϨʔλʔʹϩϘ͕Ξοϓ͞ΕΔ όʔδϣϯཧ͕Մೳʂ
TFSWFSMFTTLPCF ͔͜͜Β։ൃΑΓͳ
TFSWFSMFTTLPCF -*/&1BZܾࡁॲཧ7VFKT // ܾࡁ༧ let options = { productName: "ϩοΫղআ",
amount: 1, // ֹۚʢ͜ͷ߹1ԁʣ currency: "JPY", // ຊԁ orderId: uuid(), confirmUrl: process.env.VUE_APP_LINE_PAY_CONFIRM_URL } pay.reserve(options).then((response) => { let reservation = options reservation.transactionId = response.info.transactionId reservation.paymentUrl = response.info.paymentUrl.web callback(null, { statusCode: 200, body: JSON.stringify(reservation), headers: headers }) }) ɾBNPVOUɿֹۚ ɾPSEFS*Eɿܾࡁཧ൪߸ ɾDPOpSN6SMɿܾࡁޙભҠ63- ɾSFTFSWFɿॲཧ࣮ߦ IUUQTQBZMJOFNFKQEFWFMPQFSTBQJTPOMJOF"QJT MPDBMFKB@+1 ܾࡁ༧
TFSWFSMFTTLPCF -*/&1BZܾࡁॲཧ7VFKT // ܾࡁॲཧ const transactionId = params.get('transactionId') const reservations
= JSON.parse(params.get('reservations')) let confirmation = { transactionId: transactionId, amount: reservations.amount, currency: reservations.currency } pay.confirm(confirmation).then((response) => { callback(null, { statusCode: 200, body: 'ܾࡁྃ͠·ͨ͠ʂ', headers: headers }) }) ɾUSBOTBDUJPO*Eɿܾࡁ൪߸ ɾBNPVOUɿܾࡁ࣌ͷֹۚ ɾDVSSFODZɿܾࡁ࣌ͷຊԁ ɾDPOpSNɿॲཧ࣮ߦ IUUQTQBZMJOFNFKQEFWFMPQFSTBQJTPOMJOF"QJT MPDBMFKB@+1 ܾࡁ֬ೝ
TFSWFSMFTTLPCF ࣮ݱ͢ΔͨΊͷεςοϓ͕໘͍X ɾΞΫηετʔΫϯΛൃߦ͢Δ ɾαʔϏεΠϯελϯεࣝผࢠऔಘ ɾ3FMFBTF,FZΛऔಘ͢Δ ɾδϣϒʢϩϘʣΛ࣮ߦ͢Δ
TFSWFSMFTTLPCF ֎෦αʔϏεͱ࿈ܞ͢ΔͨΊʹඞཁͳ τʔΫϯ3FMFBTF,FZΛऔಘ͢Δ
TFSWFSMFTTLPCF ΞΫηετʔΫϯΛൃߦ͢Δ IUUQTEPDTVJQBUIDPNPSDIFTUSBUPSWSFGFSFODFTFDUJPOHFUUJOHSFGSFTIUPLFO ֤छτʔΫϯΛϝϞ
TFSWFSMFTTLPCF τʔΫϯͷ༗ޮ࣌ؒ ࣌ؒͰΕ·͢
TFSWFSMFTTLPCF ͦΕҎ֎ʹෳͷ"1*Λୟ͔ͳ͍ͱ͍͚ͳ͍PS[
TFSWFSMFTTLPCF ·ͱΊ
TFSWFSMFTTLPCF ɾ1PXFS"VUPNBUFϊϯίʔςΟϯάͰ৭ʑͰ͖Δ ɾ͓ख࣋ͪͷσόΠεΛ-*/&#FBDPOԽՄೳ ɾ-*/&1BZ།Ұ։ൃ4%,͕ެ։͞Ε͍ͯΔ ɾ4UBSU+PCTؔͰϩϘΛ࣮ߦͰ͖Δ ɾൃߦͨ͠τʔΫϯͷ༗ޮ࣌ؒ࣌ؒ ɾ͍ΖΜͳ࿈ܞָ͍͠ʘ ?P? ʗ
TFSWFSMFTTLPCF ࠂ
TFSWFSMFTTLPCF ɹ-*/&ͷνϟοτϘοτΛ࡞Ζ͏!͋ͷϋϧΧε'
TFSWFSMFTTLPCF ɹ31"ษڧˍ-5ձʂ31"-5ϋϯζΦϯࢧ෦WPM!େࡕ
TFSWFSMFTTLPCF εϚʔτεϐʔΧʔΛ༡ͼ͓ͨ͢ձ େࡕ ໊ݹ ౦ژ ̏ڌಉ࣌தܧ
TFSWFSMFTTLPCF 7PJDF$PO+BQBO ຊ࠷େڃͷ76*ɾεϚʔτεϐʔΧʔΠϕϯτ IUUQTWPJDFDPOKBQBOBBKVHKQ
TFSWFSMFTTLPCF =ׂҾΫʔϙϯίʔυ vcj2020kobe
TFSWFSMFTTLPCF ϦΞϧλΠϜΞϯέʔτ
TFSWFSMFTTLPCF ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ M5