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
AWS x LINE - LINE上でサービス提供するとき、AWSはどう使えばいい?
Search
cm-nakamura-yuki
June 23, 2020
Programming
0
2.4k
AWS x LINE - LINE上でサービス提供するとき、AWSはどう使えばいい?
cm-nakamura-yuki
June 23, 2020
Tweet
Share
More Decks by cm-nakamura-yuki
See All by cm-nakamura-yuki
Share Target Pickerで実装したいアレコレ
cmnakamura
0
7.8k
New CX using LINE
cmnakamura
0
3.2k
Developers.IO 2019 Tokyo Sapporo - 「LINEサービスを活用した新しい顧客体験を創造する」」
cmnakamura
1
1.7k
LINE, LINE Pay, Clovaで実現する新しい顧客体験
cmnakamura
1
1.1k
Other Decks in Programming
See All in Programming
PagerDuty を軸にした On-Call 構築と運用課題の解決 / PagerDuty Japan Community Meetup 4
horimislime
1
110
CSC509 Lecture 09
javiergs
PRO
0
110
Sidekiqで実現する 長時間非同期処理の中断と再開 / Pausing and Resuming Long-Running Asynchronous Jobs with Sidekiq
hypermkt
6
2.7k
Tuning GraphQL on Rails
pyama86
2
1k
Importmapを使ったJavaScriptの 読み込みとブラウザアドオンの影響
swamp09
4
1.2k
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
920
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
7
2.8k
Vue3の一歩踏み込んだパフォーマンスチューニング2024
hal_spidernight
3
3.1k
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
390
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
350
Kubernetes for Data Engineers: Building Scalable, Reliable Data Pipelines
sucitw
1
200
Universal Linksの実装方法と陥りがちな罠
kaitokudou
1
220
Featured
See All Featured
Fireside Chat
paigeccino
32
3k
Scaling GitHub
holman
458
140k
GitHub's CSS Performance
jonrohan
1030
460k
Into the Great Unknown - MozCon
thekraken
31
1.5k
Teambox: Starting and Learning
jrom
132
8.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
790
Docker and Python
trallard
40
3.1k
How to Think Like a Performance Engineer
csswizardry
19
1.1k
Happy Clients
brianwarren
97
6.7k
How to Ace a Technical Interview
jacobian
275
23k
Bash Introduction
62gerente
608
210k
The Language of Interfaces
destraynor
154
24k
Transcript
AWS x LINE LINE上でサービス提供するとき、AWSはどう使えばいい? 2020 6/23 Developers.IO 2020 CONNECT
クラスメソッド株式会社 CX事業本部 中村優輝
2 自己紹介 CX事業本部 ソリューションアーキテクト • LINEサービス活用支援 • プロダクト開発 •
サーバーレスでの実装が多い 中村優輝(にゃー) Developers.IO https://dev.classmethod.jp/author/nakamura-yuki LINE API Expert https://www.line-community.me/apiexpert/detail?apiId=0037F000020yv0DQAQ
3 本セッションの対象 • 普段プログラムを書いている方 ◦ LINE APIの開発・使うAWSインフラについてご紹介します •
LINEでサービスを提供したい方 ◦ LINE APIでできること・開発方法をご紹介します
4 目次 • LINE APIのご紹介 ◦ LINEとLINE API ◦ LINEミニアプリとLINE公式アカウント
◦ 核になるLINE API(Messaging API・LIFF・LINE Pay) • AWS x LINE 〜クラスメソッドの事例〜 ◦ LINE公式アカウント ◦ LINEミニアプリ • まとめ
5 LINE APIのご紹介
6 LINE 2020年4月 2020年第1四半期決算説明スクリプト https://d.line-scdn.net/stf/linecorp/ja/ir/all/FY20Q1_earning_releases_script_JP.pdf LINE 国内MAU 8,400万 LINE Pay
国内MAU 229万
7 ネイティブアプリの悩みを解決 • ネイティブアプリインストールされない ◦ リンク・QRから友だち追加するだけ • ユーザーの学習コスト ◦ LINEの操作のため学習コスト・ハードルが低い
• 通知が届かない ◦ プッシュの開封率が高い ◦ 通知数が多い場合ブロックされる可能性がある • UI・UX ◦ 統一されたUI ◦ Bot Designerを利用することで工数を減らせる
8 オープンプラットフォーム • Messaging API • LINE Front-end Framework(LIFF) •
LINE Pay • LINEログイン • LINE BRAIN CHATBOT • LINE BRAIN OCR(文字認識) • LINE Beacon(Messaging API) • LINE Things • Clova Extensions Kit
9 コアLINEサービスとAPI LINE公式アカウント Messaging API LINE Pay LINEミニアプリ・LIFFアプリ LINE Front-end
Framework(LIFF) LINE Pay
10 Topic 「LINE CONFERENCE 2019」を開催 https://linecorp.com/ja/pr/news/ja/2019/2784
11 LINEミニアプリ • LINE Front-end FrameworkをベースとしたWeb App • アプリインストールなしで利用開始 •
Web AppなのでワンソースマルチOS対応 • LINE APIとの連携 ◦ サービス通知、友だちシェアなど • LINE Payでシームレスな決済体験を提供
12 LINEミニアプリ - Developers.IO CAFE • チャットUIで実現できなかったUX • 公式アカウントとの連携 •
https://youtu.be/zjYrnUu1Bjs
13 サービスタブからアクセス
14 Developers.IO CAFEの例
15 LINE Front-end Framework(LIFF) LINE上で動くWeb app • 自社のサービスを登録 • SDKを用いた開発
• 利用料は無料 Services
16 Easy to Use - LIFF SDK • 数行のコードで機能利用が可能 •
プロフィール、友だちシェア... • アクセストークンでAPI連携可能 • npmモジュール、UIフレームワーク (TBD)
17 LINE Pay LINE内完結決済 • APIでLINE内オンライン決済 • サブスクリプション • チャージ&ペイ
• 開発は無料、トランザクション課金 Pay with QR Online Payment
18 LINE Payでのフロー
19 LINE公式アカウント - Developers.IO CAFE • 公式アカウント内でチャットオーダー • LINE Payでシームレスな注文フロー
• https://youtu.be/FtTDshvRCns
20 Messaging API Webhookで接続 • メッセージ送信 • リッチメニュー • SDKを利用して簡単に実装
• 無料からスタート従量課金 BOT CHAT
21 @line/bot-sdk • 新機能リリースアップデートが早い • Java, PHP, Go, Perl, Ruby,Python,
Node.js(TypeScript対応) • https://github.com/line/line-bot-sdk-nodejs
22 AWS x LINE クラスメソッドの事例
23 LINE x Serverless • AWSの完全マネージド型サービスを活用 ◦ AWSによるコンポーネントの管理、スケーリング •
スタート時のコストをほぼ0で実現 ◦ 常時起動インスタンス<イベント駆動 サービスインまでのコストを最小限に、 プロトタイプを実装し継続した機能改善を重視する。
24 LINE公式アカウント
25 API Gateway / Lambda - webhook APIプロキシ&イベント型コンピューティング ◦ LINEとの接続用Webhook
- HTTP POSTの構築可能 ◦ 開発者自身でAPIの作成・コード実行まで対応できる ◦ リクエストに応じて数十万リクエストまでオートスケール ◦ バックエンドはIAMロールを使ったAWSサービスへの接続 ◦ CloudWatchを利用したロギング
26 LINEミニアプリ(LIFFアプリ)
27 CloudFront + S3 静的コンテンツ配信の王道構成 • Route53でカスタムドメイン • AWS Certificate
ManagerによるHTTPS化 ◦ LINEミニアプリ・LIFFアプリで必須 • SLA - 高い耐障害性 ◦ CloudFront: 99.9% ◦ S3: 99.999999999% ◦ Route53: 100% • APIのCORS回避のためにCloudFrontで同一ドメインでアクセス可能にする
28 Amplify • モバイルアプリ・ウェブアプリ構築プラットフォーム ◦ Web, iOS, Android, React Native対応
◦ REST/Graph QL APIを構築可能 • Amplify Console ◦ フロントエンド・バックエンドのホスト・デプロイを実現 ◦ カスタムドメイン&HTTPS CI/CDも含めたインフラ構築・アプリケーション開発で有用
29 AWS CDK - IaC AWS CDK ◦ TypeScript /
JavaScript / Python / Java / C# を使いAWSリソースを構成要素として実 行・デプロイ ◦ プログラミング言語によるIDEや型補完の恩恵を受けられる ◦ CDKの裏側ではCloudFormationテンプレート(YAML)を生成、デプロイ 普段開発を行っている場合は、AWS CDKからスタートがオススメ
30 まとめ
31 まとめ • 8,400万のユーザー基盤でサービス提供ができる ◦ 対ネイティブアプリ、スーパーアプリの波に乗る • LINEの豊富API/SDKを使って無料で開発ができる ◦ ミニアプリのオープン化でより成長が期待される
• AWSサーバーレスを活用して早く・安く実装・運用する ◦ たくさんのフィードバックを反映してよりよくする LINE Developer Community Q&A https://www.line-community.me/questions Facebook https://www.facebook.com/groups/linedevelopercommunity
None