Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS x LINE - LINE上でサービス提供するとき、AWSはどう使えばいい?

AWS x LINE - LINE上でサービス提供するとき、AWSはどう使えばいい?

cm-nakamura-yuki

June 23, 2020
Tweet

More Decks by cm-nakamura-yuki

Other Decks in Programming

Transcript

  1. 2 自己紹介 CX事業本部
 ソリューションアーキテクト
 
 • LINEサービス活用支援
 • プロダクト開発
 •

    サーバーレスでの実装が多い
 中村優輝(にゃー)
 Developers.IO https://dev.classmethod.jp/author/nakamura-yuki LINE API Expert https://www.line-community.me/apiexpert/detail?apiId=0037F000020yv0DQAQ
  2. 3 本セッションの対象 • 普段プログラムを書いている方
 ◦ LINE APIの開発・使うAWSインフラについてご紹介します
 
 
 •

    LINEでサービスを提供したい方
 ◦ LINE APIでできること・開発方法をご紹介します
 
 

  3. 4 目次 • LINE APIのご紹介
 ◦ LINEとLINE API
 ◦ LINEミニアプリとLINE公式アカウント


    ◦ 核になるLINE API(Messaging API・LIFF・LINE Pay)
 
 • AWS x LINE 〜クラスメソッドの事例〜
 ◦ LINE公式アカウント
 ◦ LINEミニアプリ
 
 • まとめ

  4. 7 ネイティブアプリの悩みを解決 • ネイティブアプリインストールされない
 ◦ リンク・QRから友だち追加するだけ
 • ユーザーの学習コスト
 ◦ LINEの操作のため学習コスト・ハードルが低い


    • 通知が届かない
 ◦ プッシュの開封率が高い
 ◦ 通知数が多い場合ブロックされる可能性がある
 • UI・UX
 ◦ 統一されたUI
 ◦ Bot Designerを利用することで工数を減らせる

  5. 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
 

  6. 11 LINEミニアプリ • LINE Front-end FrameworkをベースとしたWeb App
 • アプリインストールなしで利用開始
 •

    Web AppなのでワンソースマルチOS対応
 • LINE APIとの連携
 ◦ サービス通知、友だちシェアなど
 • LINE Payでシームレスな決済体験を提供

  7. 16 Easy to Use - LIFF SDK • 数行のコードで機能利用が可能 •

    プロフィール、友だちシェア... • アクセストークンでAPI連携可能 • npmモジュール、UIフレームワーク (TBD)
  8. 21 @line/bot-sdk • 新機能リリースアップデートが早い • Java, PHP, Go, Perl, Ruby,Python,

    Node.js(TypeScript対応) • https://github.com/line/line-bot-sdk-nodejs
  9. 23 LINE x Serverless • AWSの完全マネージド型サービスを活用
 ◦ AWSによるコンポーネントの管理、スケーリング
 
 •

    スタート時のコストをほぼ0で実現
 ◦ 常時起動インスタンス<イベント駆動
 
 
 サービスインまでのコストを最小限に、
 プロトタイプを実装し継続した機能改善を重視する。

  10. 25 API Gateway / Lambda - webhook APIプロキシ&イベント型コンピューティング
 ◦ LINEとの接続用Webhook

    - HTTP POSTの構築可能
 ◦ 開発者自身でAPIの作成・コード実行まで対応できる
 ◦ リクエストに応じて数十万リクエストまでオートスケール
 ◦ バックエンドはIAMロールを使ったAWSサービスへの接続
 ◦ CloudWatchを利用したロギング

  11. 27 CloudFront + S3 静的コンテンツ配信の王道構成
 • Route53でカスタムドメイン
 • AWS Certificate

    ManagerによるHTTPS化
 ◦ LINEミニアプリ・LIFFアプリで必須
 • SLA - 高い耐障害性
 ◦ CloudFront: 99.9%
 ◦ S3: 99.999999999%
 ◦ Route53: 100%
 • APIのCORS回避のためにCloudFrontで同一ドメインでアクセス可能にする

  12. 28 Amplify • モバイルアプリ・ウェブアプリ構築プラットフォーム
 ◦ Web, iOS, Android, React Native対応


    ◦ REST/Graph QL APIを構築可能
 
 • Amplify Console
 ◦ フロントエンド・バックエンドのホスト・デプロイを実現
 ◦ カスタムドメイン&HTTPS
 CI/CDも含めたインフラ構築・アプリケーション開発で有用

  13. 29 AWS CDK - IaC AWS CDK
 ◦ TypeScript /

    JavaScript / Python / Java / C# を使いAWSリソースを構成要素として実 行・デプロイ
 ◦ プログラミング言語によるIDEや型補完の恩恵を受けられる
 ◦ CDKの裏側ではCloudFormationテンプレート(YAML)を生成、デプロイ
 
 普段開発を行っている場合は、AWS CDKからスタートがオススメ

  14. 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