Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ルクミー午睡チェックを支えるアーキテクチャ

782 views

Published on

AWS Startup Architecture of the Year Japan 2020 の Live Finale のピッチで使用したスライドです。

Published in: Healthcare
  • Be the first to comment

  • Be the first to like this

ルクミー午睡チェックを支えるアーキテクチャ

  1. 1. ©️ UniFa Inc. ルクミー 午睡チェックを 支える アーキテクチャ ユニファ株式会社
  2. 2. ©️ UniFa Inc. 事業・サービスについて
  3. 3. ©️ UniFa Inc. もっと見たい。 もっと見てほしい。 を、もっと叶えたい。 「保育の質を上げる」保育関係者のパートナー
  4. 4. ©️ UniFa Inc. ルクミー午睡チェック概要 午睡チェックセンサー 午睡チェックアプリ  体の向きを自動で記録  うつ伏せ寝、体動の停止時にア ラートでお知らせ  帳票(午睡チェック表)出力 Web管理画面
  5. 5. ©️ UniFa Inc. 従来の午睡チェック業務 手書きによる5分間隔でのうつ伏せ寝チェック
  6. 6. ©️ UniFa Inc. 利用実績 特に求められる Well-Architected の柱  信頼性  運用上の優秀性 導入施設数 約 3,200 施設 午睡センサー数 約 35,000 個 タブレット数 約 5,000 台
  7. 7. ©️ UniFa Inc. システムアーキテクチャ
  8. 8. ©️ UniFa Inc. 想定された課題 アクセス特性  ピークタイム: 11:00 – 15:00  5分毎に iPad アプリから集中的にデータが送信される チェックシートデータ量  12レコード/園児/時 x 14時間 x 10園児 = 1,680レコード/日/施設  1,680 x 2,000施設 = 3,360,000レコード/日
  9. 9. ©️ UniFa Inc. Well-Architected なポイント  信頼性  運用上の優秀性
  10. 10. ©️ UniFa Inc. Overview
  11. 11. ©️ UniFa Inc. 全体構成図
  12. 12. ©️ UniFa Inc. 全体構成図 オンライン処理
  13. 13. ©️ UniFa Inc. 全体構成図 バッチ処理
  14. 14. ©️ UniFa Inc. 全体構成図
  15. 15. ©️ UniFa Inc. 全体構成図
  16. 16. ©️ UniFa Inc. 午睡チェックシートデータの処理
  17. 17. ©️ UniFa Inc. 午睡チェックシートデータの処理 ピークタイムに合わせて EC2 を Auto Scaling ピークタイムに合わせて EC2 を Auto Scaling (API Server と同一インスタンス)
  18. 18. ©️ UniFa Inc. 午睡チェックシートデータの処理 Redis を使用して ステータスフラグを記録し Create/Update/Delete の 処理順番を保つ
  19. 19. ©️ UniFa Inc. 午睡チェックシートデータの処理 SQSを介した非同期処理 Worker が DynamoDBに書き込む
  20. 20. ©️ UniFa Inc. 午睡チェックシートデータの処理
  21. 21. ©️ UniFa Inc. 午睡チェックシートデータの処理 DynamoDB の Write Capacity を 予め登録しておく Worker は起動時に自身の情報を登録 稼働中の Worker 数と Write Capacity の情報を取得 WriteCapacity: 120
  22. 22. ©️ UniFa Inc. 午睡チェックシートデータの処理 DynamoDB の Write Capacity を 予め登録しておく Worker は起動時に自身の情報を登録 稼働中の Worker 数と Write Capacity の情報を取得 Write Capacity の情報をもとに スロットリングが発生しないように 書き込み速度を調整 WriteCapacity: 120 40 40 40
  23. 23. ©️ UniFa Inc. Design for Failure 10回処理に失敗したデータは DLQに格納される。 送信順が不正だった場合は 処理に失敗するため DLQに格納され通知される。 4日間処理されなかった場合 削除される
  24. 24. ©️ UniFa Inc. Design for Failure
  25. 25. ©️ UniFa Inc. Design for Failure 午睡チェック業務実行中の場合は サーバへ接続できなくなっても センサーと iPad 間でチェック業務可能
  26. 26. ©️ UniFa Inc. Design for Failure セルラー回線(SORACOM Air Sim)を使うことで 保育園のWi-Fiの安定性の問題を回避 同時に導入時の保育園側のハードルを下げる
  27. 27. ©️ UniFa Inc. ビジネスインパクト
  28. 28. ©️ UniFa Inc. 導入施設数  サービス開始: 2018年4月(約2年半経過)  導入施設数: 約3,200施設(2020/06/30時点)
  29. 29. ©️ UniFa Inc. データ量増加推移 0 1 2 3 4 5 6 7 8 9 10 Millions 2年半累計で約1.2億レコード 2020.04緊急事態宣言 コ ロ ナ 禍 に よ る 稼 働 減
  30. 30. ©️ UniFa Inc. アーキテクチャによるビジネス貢献 信頼性  レスポンスタイムやパフォーマンスの劣化なし  サーバに接続できなくても稼働継続可能 運用上の優秀性  セルラー回線を使うことでWi-Fiの問題を回避  安定的な稼働と導入時のハードルを下げることに貢献
  31. 31. ©️ UniFa Inc. 安心を進化させる。 ほほ笑みが増えていく。 命に関わる業務での 安心・安全をサポート 求められる Well-Architected の柱  信頼性  運用上の優秀性
  32. 32. ©️ UniFa Inc. もっと見たい。 もっと見てほしい。 を、もっと叶えたい。
  33. 33. ©️ UniFa Inc. We are hiring!! インフラエンジニア、Rubyエンジニアをはじめとして 開発メンバー募集しています!!お気軽にご連絡ください!! 求人一覧はこちら!!

×