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
49
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Golang on AWS
cupper
November 23, 2019
More Decks by cupper
See All by cupper
kintoneでAWSリソースを管理する
cupperservice
0
120
History of HTTP
cupperservice
0
98
Let's get started with Scala
cupperservice
0
410
All in Scala
cupperservice
0
56
Recommendation_of_Gatling.pdf
cupperservice
2
570
What's scala.js?
cupperservice
0
63
How to work in local
cupperservice
0
63
Make a REST Server on Golang
cupperservice
0
95
Why do you use JavaScript
cupperservice
0
40
Other Decks in Programming
See All in Programming
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
130
PyO3 で既存 Python 評価器を Rust core 化する ー wasm-bindgen でブラウザにも配るための設計
kdash
1
390
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.3k
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
リアルな遅延を測る仕様
kota_yata
1
140
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
630
週末にAI-DLCを本気で回したら$1,600溶けた
hbashimizu
0
120
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
210
FDEとは、何者なのか?
masapyon1212
0
140
Press start. Python's next generation.
willingc
PRO
3
300
FastAPI の並行処理モデルを完全に理解する
hoto17296
9
3.7k
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
1
10k
So, you think you're a good person
axbom
PRO
2
2.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
490
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
330
Code Reviewing Like a Champion
maltzj
528
40k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
490
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.7k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
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