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
Golang on AWS
Search
cupper
November 23, 2019
Programming
0
46
Golang on AWS
cupper
November 23, 2019
Tweet
Share
More Decks by cupper
See All by cupper
kintoneでAWSリソースを管理する
cupperservice
0
87
History of HTTP
cupperservice
0
79
Let's get started with Scala
cupperservice
0
390
All in Scala
cupperservice
0
53
Recommendation_of_Gatling.pdf
cupperservice
2
540
What's scala.js?
cupperservice
0
54
How to work in local
cupperservice
0
61
Make a REST Server on Golang
cupperservice
0
90
Why do you use JavaScript
cupperservice
0
29
Other Decks in Programming
See All in Programming
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
1.8k
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.4k
株式会社 Sun terras カンパニーデック
sunterras
0
2k
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
450
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
170
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
390
Rubyと楽しいをつくる / Creating joy with Ruby
chobishiba
0
210
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
340
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
740
atmaCup #23でAIコーディングを活用した話
ml_bear
4
750
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
650
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
120
Featured
See All Featured
Everyday Curiosity
cassininazir
0
150
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
230
Un-Boring Meetings
codingconduct
0
220
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
470
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
65
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Thoughts on Productivity
jonyablonski
75
5.1k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
190
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
280
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
Golang on AWS #Shizuoka.go 2019.11.23 Kazuhisa Kawashima Renée French
アジェンダ • 自己紹介 • 今日やること • システム構成 • 開発環境 •
Demo • まとめ
自己紹介
自己紹介:川嶋一寿 • 2019年6月株式会社ゆめみに入社(3社目) • フルリモート勤務(静岡) • Golangの経験 勉強会用に簡単なREST APIを作ったことがある程 度
(発表資料) • 好きな言語 Scala, TypeScript (型 Love!) 参考:Shizuoka.jsでのLT資料 • Twitter : @cupperservice • E-mail :
[email protected]
今日やること
今日やること メッセージを受信し、受信したメッセージをストレージに 保管すると同時に、Slackのチャネルに通知するREST APIを作成する。 ストレージ Slack チェネル 処理 保管 通知
メッセージ受信
システム構成
システム構成 AWS Lambda Amazon API Gateway Amazon Simple Storage Service
Slack Golang
使用するサービス • Amazon API Gateway • AWS Lambda • Amazon
S3 (Amazon Simple Storage Service) • AWS CloudFormation • Slack(Web hook)
Amazon API Gateway REST or WebSocketのAPIを構築するサービス AWSまたは、他のサービスにアクセスするAPIを作成 することができる 参照 :
Amazon API Gatewayとは
AWS Lambda サーバを管理する必要なく、コードを実行できるサー ビス 利用者は、自身が作成したコードのみに責任を負う。 メモリ、CPU、ネットワーク等のリソースはAWSが管理 する 参照 : AWS
Lambdaとは
Amazon S3 インターネット用のストレージサービス スケーラブルで信頼性が高く高速で安価なストレージ を利用できる 参照 : Amazon S3とは
AWS CloudFormation AWSリソースをモデル化し、セットアップやプロビジョ ニングを行うサービス 参照 : AWS CloudFormationとは
Slack 説明省略
開発環境
今回使用する開発環境 • golang 1.13.4 • VSCode + Remote - Containers
• Docker, Docker compose • Centos 7 • AWS CLI • SAM(Serverless application model)
Demo
API仕様 • Endpoint : /hello/{name} • Query Parameters ◦ key
◦ value Example : /hello/gopher?key=price&value=1000
まとめ
Golang on AWSってどう? • Golang用のSDKが整備されている。 AWSのリソースにGolangから簡単にアクセスでき る! • SAMは便利 簡単にサーバレスアプリを作って、AWSに配備す
ることができる!
Github repository aws-go-example
Thank you for listening! Renée French