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

想定外の負荷を乗り切ったオンライン教育サービスの裏側 / How We Overcame th...

Takeshi Kondo
February 19, 2021

想定外の負荷を乗り切ったオンライン教育サービスの裏側 / How We Overcame the COVID-19 Crisis

Takeshi Kondo

February 19, 2021
Tweet

More Decks by Takeshi Kondo

Other Decks in Technology

Transcript

  1. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 @chaspy (Takeshi Kondo) ➔ Lead Software Engineer, Site

    Reliability at Quipper ➔ Community ◆ Japan Datadog User Group Organizer ◆ Terraform-jp board member ➔ Social ◆ Twitter: chaspy_ ◆ Github: chaspy
  2. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 今日お話しすること Quipper が開発する国内・海外両プロダクトが どのように未曾有の危機を乗り越えてきたか オンライン教育サービスであるスタディサプリ / Quipper は

    COVID-19 により需要 が急増し、当たり前に使われる New Normal となりました。この危機をコミュニ ケーションとエンジニアリング両面でどう乗り越えたのか、その事例を紹介しま す。
  3. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 Quipper とはどんな会社? 2010年ロンドンで設立、世界に向けた教育サービス Quipper を運営。 2015年に M&A を経てリクルート傘下へ。

    以降、日本向けにスタディサプリ、海外(*1)向けに Quipper というブランド名でオ ンライン教育プロダクトの開発・運営を行っている。 *1 フィリピン、インドネシアに展開中
  4. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 海外向けサービス Quipper Schoolは小学校から高校まで、学校の教室で先生方をサポートするオンラインラーニングマネージメントプラットフォー ムです。先生方は限られた時間の中で、増え続ける複雑な校務、変化する教育過程の対応などに追われています。 Quipper Schoolを通じて、私たちは先生の業務負荷を軽減するだけではなく、 21世紀を生き抜く人材育成のお手伝いをしたいと考えてい ます。

    Quipper Videoは、いつでもどこでも自分のペースで学習できるオンライン講義動画サービスです。実力派講師によって解説さ れる短くまとめられた講義動画、図解説明の入ったわかりやすいテキスト、自分の苦手箇所がわかる到達度テストの三点セット によって、一人一人を自ら学べる生徒にします。教師向けプラットフォームである Quipper Schoolを使うことで、先生は生徒に 対しQuipper Videoを使った学習を促すことも可能です。 Quipper Campusは進学を考える高校生のための大学進学情報サイトです。地域や専攻による大学検索だけでなく、適性テス トを通じて自分の目指す進路に最適な教育機関を見つけることができます。現在インドネシアでのみ運営しています。
  5. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 日本 インドネシア フィリピン 対象学年 小・中学校 高校 大学・社会人 高校

    高校 オンラインビデオ (B to C) オンラインビデオ& アセスメント (B to B to C) オンラインコーチング 各国で様々なサービスラインナップにて事業展開をしています パーソナルコーチプラン サービスラインナップ
  6. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 47万人 74万人 26万人 8万人 4万人 17 サービス会員数推移 サービス開始から

    8年、有料会員数は国内外で 伸び続けています。最新の会員数は 2020年12月末時点の157万人。 (2019年までは各年度の 累計) 国外 国内 2014 2015 2016 2017 2018 2013 97万人 110 13 2019 127万人 2020 157万人
  7. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 解決策 ➔ データによる需要予測と負荷緩和 ◆ 今後何倍のユーザ数増加が見込まれるのか ◆ スパイクアクセスをいかに回避するか ➔

    エンジニアリングによる解決 ◆ エンジニアリングチーム一丸となり”できることはなんでもやる” ◆ 最大のボトルネックとなりうる MongoDB への抜本的対処
  8. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 データによる需要予測と負荷緩和 ➔ 基本的には昨年度実績から予測するが、 ” 一括受注”が昨年との差分 ➔ 営業から定性情報をヒアリングし、予測に反映 ◆

    学校により Active Learner 率が異なる • 自治体主導で導入を決めたが、活用するかは学校に任されている場合 • 既に他の学年で活用されている学校に導入する場合
  9. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 エンジニアリングで”できることはなんでもやった” ➔ SRE ◆ RDS PostgreSQL の Aurora

    化 ◆ Reverse Proxy の Scaleup ◆ HPA 導入 ◆ Worker Node Group 分離 ◆ Memcached Scaleup ◆ Amazon GuardDuty 導入 ➔ Web Developer ◆ 意図しない実装による不要な update の削減 ◆ 不要な Write の削減 ◆ 不要なデータの削除 ◆ 学習データ更新サービスのrate limiting ◆ Native Client からの API call 数削減
  10. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 UsageDB を Atlas へ移行 / Sharding 有効化 ➔

    Write Access の多い “Usage DB” を Sharding ◆ Managed Service(Atlas) へ移行 ◆ いわゆる水平分割 Main DB / self-hosted Usage DB / Atlas Sharding
  11. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 エンジニアリングで”できることはなんでもやる” ➔ Web Developer は Application でできる負荷対策に取 り組む

    ➔ 事前スケール(Scheduled-Scaling)の実現 ◆ Global Development VPoE と SRE の協力 • SRE は Kubernetes / Platform のことは詳しいが、 ドメ イン知識は不足
  12. #devsumi 想定外の負荷を乗り切ったオンライン教育サービスの裏側 @chaspy (Takeshi Kondo) ➔ Lead Software Engineer, Site

    Reliability at Quipper ➔ Community ◆ Japan Datadog User Group Organizer ◆ Terraform-jp board member ➔ Social ◆ Twitter: chaspy_ ◆ Github: chaspy