Skip to main content
A
// ケースファイル 02 / 19
← すべてのケースファイル

Blitzlearning

クライアントマルチテナント · RLS強制 · 稼働中FastAPIPostgreSQLpgvectorMeilisearchRedis 公開サイトを見る ↗
01> リリースまでの道のり
// 課題01

AIネイティブのLMSは、互いに何一つ共有しない教育機関に売る必要がありました。あるテナントが別テナントの受講者を目にした時点で契約は終わり、それでいて誰もページ送りしたくない講座ライブラリを瞬時に感じさせなければなりません。

// アプローチ02

分離はアプリケーションコードではなくデータベースに置きました。テナント単位の行レベルセキュリティを備えたPostgres 16、その隣で意味検索を担うpgvector、キーワード速度のためのMeilisearch、非同期FastAPIの背後で教材を取り込むarqワーカー。

// 成果03

テナントは同じデータベースを共有しながら、APIが誤っても他社の行には到達できません。教材はアップロードが終わった瞬間から、語句でも意図でも検索できます。

case --info blitzlearning
> クライアント · Blitzlearning
> 業種 · EdTech
> 技術スタック · FastAPI · PostgreSQL · pgvector · Meilisearch · Redis
> 結果 · マルチテナント · RLS強制 · 稼働中
> case/blitzlearningリリース済み ▮

同じようなシステムをお考えですか。

何をつくりたいかをお聞かせください。営業トークではなく、範囲を定めた計画をお返しします。