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
サーバーレスアーキテクチャでサクッと作るアイマスbot
Search
Keiichi Nomura
July 06, 2019
Technology
1
920
サーバーレスアーキテクチャでサクッと作るアイマスbot
Keiichi Nomura
July 06, 2019
Tweet
Share
More Decks by Keiichi Nomura
See All by Keiichi Nomura
チーム開発のふりかえり2024 #devio2024
k1style
0
200
ECサイト向け決済機能の開発で学んだ外部決済サービスの活用ポイント
k1style
1
1.6k
開発チームリーダーとしてやってきたことのふりかえり
k1style
0
1.2k
【EC/CRM基盤開発】 prismatix事業部 Devチーム(サーバーサイドエンジニア)の紹介 / Prismatix server side engineer job introduction
k1style
0
1.3k
外部決済サービスを利用する上での脆弱ポイントと対策 / Vulnerable points and countermeasures for using external payment services
k1style
0
1.6k
外部決済サービスを利用した開発の反省と改善 #devio2021 / Introspection and Improvement of Development with External Payment Services
k1style
0
1.5k
Developers.IO 2020 Connect Day5 ECサイトの決済システムを作るなら知っておきたいこと / Developers.IO 2020 Connect Day5 Payment Development Flow With E-commerce Site
k1style
0
4.4k
私が考えるAWSを使ったアイマスHack
k1style
1
980
Other Decks in Technology
See All in Technology
Lexical Analysis
shigashiyama
1
150
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
110
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
400
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
安心してください、日本語使えますよ―Ubuntu日本語Remix提供休止に寄せて― 2024-11-17
nobutomurata
1
990
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
Featured
See All Featured
Teambox: Starting and Learning
jrom
133
8.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
KATA
mclloyd
29
14k
Faster Mobile Websites
deanohume
305
30k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Docker and Python
trallard
40
3.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Optimizing for Happiness
mojombo
376
70k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Transcript
サーバーレスアーキテクチャでサクッと 作るアイマスbot 2019/07/06 IM@S Engineer Talks nomura.keiichi(K1)
自己紹介 K1 ( 野村啓一 : nomura.keiichi) @k1_style クラスメソッド株式会社 事業開発部所属 アプリケーションエンジニア(サーバサイド)
Java(Spring Boot, Gradle), AWS 竜宮小町・セクシーギルティ・放課後クライマックスガールズP
今日話すこと サーバーレスアーキテクチャとは AWS SAM で、アイドルがSlack で喋りかけてくれる風bot を試しに作った
サーバーレスアーキテクチャとは
サーバーレスアーキテクチャとは サーバー管理を意識せずアプリケーションやサービスを構築して実 行する手法のこと。 コード実行環境がすぐ利用できる サーバーのOS やミドルウェア等の管理は不要 AWS によるサーバーレスアーキテクチャの解説 https://aws.amazon.com/jp/lambda/serverless-architectures-learn- more/
AWS SAM
AWS SAM AWS のサーバーレスアプリケーション構築用フレームワーク 利用するAWS 環境を定義するテンプレートと、メインロジックと なるプログラムを開発者が用意 SAM で用意されたCLI でテスト・ビルド・デプロイを実施
https://aws.amazon.com/jp/serverless/sam/
サーバーレスアプリケーションに必要な環境の定義をテンプレート に記載
AWS Lambda で動作するロジックを実装
サーバーレスアプリケーションのテスト・ビルド・デプロイをCLI で 実行 sam local invoke --template template.yaml --event "App-event.json"
2019-07-05 22:33:56 Found credentials in environment variables. 2019-07-05 22:33:56 Invoking handler.App (java8) < 中略> {"body":"{ \"message\": \" 次もこの調子でいくわよ!\" }","headers":{"X-Custom-Header"
AWS Toolkit AWS SAM の機能をIDE 上で容易に実行可能にできるIDE プラグイン IntelliJ https://aws.amazon.com/jp/intellij/ eclipse
https://aws.amazon.com/jp/eclipse/ Visual Studio https://aws.amazon.com/jp/visualstudio/
【参考】AWS Toolkit for JetBrains 使ってみたブログ https://dev.classmethod.jp/cloud/aws/aws-toolkit-for-jetbrains-with- java8-gradle/
Slack でアイドルが喋りかけてくれる風bot を試 しに作った
いおりんbot
デモ curl -s https://xxx.execute-api.region.amazonaws.com/Prod/hello/ 用意したエンドポイントを叩くと、Slack でいおりんが発言する
やったこと 1. Slack でBot を用意する 2. AWS Toolkit 導入済みのIntelliJ でAWS
Serverless Application のプロ ジェクト作成 3. Bot のエンドポイント等AWS 環境の定義をtemplate.yaml に記述 4. Bot で動かすプログラムとユニットテストを書く 5. AWS Toolkit 使ってデプロイ
ソースコード https://github.com/K1-Style/imas-slack-iorin-bot 近日中に、README と解説ブログまとめます。
まとめ サーバーレスアーキテクチャの恩恵を活かして、有用なアイマスbot を量産していこう
https://k1-style.net @k1_style