Slide 1

Slide 1 text

LINE Developer Meetup in Kyoto#26 Messaging API 活用最前線 白木 翔也 @morugu

Slide 2

Slide 2 text

白木 翔也 株式会社REACT - ミッション 人と人とのコミュニケー ションコストをゼロにする - 事業 ボット作成サー ビス 「Engagebot」 SNS Twitter: @morugu Blog: blog.morugu.com

Slide 3

Slide 3 text

Engagebot LINE/Facebook のボット作成/ 運用サー ビス

Slide 4

Slide 4 text

Engagebot - TV ドラマ - ゲー ム - EC サイト and more!

Slide 5

Slide 5 text

今日話すこと ( ボットの) 可能性を広げる ( ボットを) 安定して運用する

Slide 6

Slide 6 text

本題に入る前に

Slide 7

Slide 7 text

ボットを作ったことある方?✋

Slide 8

Slide 8 text

ボット開発 オウム返しで終わりがち 機能実装こそエンジニアの力の見せどころ 実戦投入してこそボットが活きる

Slide 9

Slide 9 text

作ったボットの機能 採用面接 スタンプラリー カウンセリング 画像加工 実況中継 リアルタイムリッチメニュー and more!

Slide 10

Slide 10 text

作ったボットの機能 採用面接 スタンプラリー カウンセリング 画像加工 実況中継 リアルタイムリッチメニュー and more!

Slide 11

Slide 11 text

採用面接

Slide 12

Slide 12 text

LINE 選考に合格したら即最終面接 スピー ド感のある採用試験

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

カウンセリング

Slide 16

Slide 16 text

遠隔漢方相談サー ビス LINE BOT で質問に回答 -> 薬剤師がチャットでカウンセリング -> 漢方薬を自宅に配送

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

今日話すこと ☑( ボットの) 可能性を広げる ( ボットを) 安定して運用する

Slide 20

Slide 20 text

LINE ボットユー ザー の傾向?

Slide 21

Slide 21 text

1 分だけ( アクセスが) すごい来る

Slide 22

Slide 22 text

X 軸: LINE Webhook からのリクエスト数 Y 軸: 時間

Slide 23

Slide 23 text

高負荷対策 1. 高負荷な時間を確認& 予測 2. キャッシュ戦略 3. Reply API とPush API の使い分け

Slide 24

Slide 24 text

1. 高負荷な時間を確認& 予測

Slide 25

Slide 25 text

Auto Scaling では間に合わない 最短でも1~3 分ぐらいかかる 最初の1 分が勝負 高負荷になりがちなタイミング ドラマ放送10 分前( 一斉に配信するため) 広告配信 SNS で拡散された時(Instagram, Twitter 等) プレスリリー ス配信

Slide 26

Slide 26 text

2. キャッシュ戦略

Slide 27

Slide 27 text

ものすごいメッセー ジ量

Slide 28

Slide 28 text

応答に必要なワー ドのみキャッシュしておく それ以外は非同期でログデー タとして処理

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

3. Reply API とPush API の使い分け

Slide 31

Slide 31 text

Reply API ユー ザー からのメッセー ジ受信がトリガー 短時間有効なトー クンを使用して送信 トー クンの使用は1 回のみ Push API ユー ザー or 配信側がトリガー ユー ザー へ任意のタイミングで送信

Slide 32

Slide 32 text

API 制限 Messaging API を経由して送れるメッセー ジは API ごとに最大10,000req/1min

Slide 33

Slide 33 text

一斉に配信する場合(Push API) 10,000req/1min を超過しないように配信数を制限 Ex. 対象ユー ザー が、100,000 件の場合 - 9,000req/1min ぐらい - 約12 分かかる

Slide 34

Slide 34 text

ユー ザー が送ったメッセー ジに 応答する場合(Reply API & Push API) 超過すると429 Too Many Requests が来る -> リトライする仕組みを予め用意しておく Reply API が制限数に達したら, Push API を併用して使う策もあり -> 20,000req/1min まで上限を伸ばせる

Slide 35

Slide 35 text

今日話すこと ☑( ボットの) 可能性を広げる ☑( ボットを) 安定して運用する Complete❗

Slide 36

Slide 36 text

Enjoy Bot Life