マルチテナント型リスク管理プラットフォーム
- 受託開発(請負)
顧客企業ごとにサーバーとデータベースを分離するエンタープライズ向けリスク管理基盤を、請負で設計から運用・デプロイ基盤まで引き受け、テナント追加時の設定生成まで含めて実装。
図
(原寸を新しいタブで開く)
概要
エンタープライズ向けのマルチテナント型リスク管理プラットフォーム。顧客企業ごとに独立したサーバーとデータベースクラスタを構築する分離モデルで、時系列データの取り込みから指標の算出、閾値超過アラート、レポート出力までを提供します。受託開発として、アプリケーション設計から運用・デプロイ基盤まで担当しました。
アーキテクチャは Rails Engines によるモジュラーモノリス。利用者コンテキスト(テナント利用者向け/システム管理者向け/データ収集)でモジュールを分割し、Engine 間の直接メソッド呼び出しを禁じて DB 経由の連携のみを許可することで境界を保っています。テナントDB・共有DB・管理DBを分けた多データベース構成を採り、環境変数のロール指定でマウントする Engine と DB 接続境界を切り替え、Kamal でロールごとに別サーバーへデプロイ。ジョブ・キャッシュ・WebSocket は Solid Queue / Solid Cache / Solid Cable で完結させ、追加のミドルウェアを持たない構成としています。画面は Hotwire と Tailwind CSS で構築し、CSV による一括取り込み、非同期の月次バッチ集計、テナント追加時のデプロイ設定・シークレット生成までを実装しています。
技術スタック
- Rails
- Hotwire
- TailwindCSS
- Kamal
関連するサービス
ご依頼後の活動の流れ
受託開発をご依頼いただいた場合の一般的な流れです。
-
1お客様
お問い合わせフォームの送信
作りたいもの、または置き換えたいシステムの概要と、希望する時期をお知らせください。まだ決まっていないことは、決まっていないとお書きいただければ構いません。
-
2当社通常3営業日以内
ご返信とヒアリングの日程調整
いただいた内容を確認し、オンラインでのヒアリングの日程をご相談します。お引き受けが難しい場合も、その旨をご連絡します。
-
3双方
ヒアリング(オンライン)
要件の背景と目的を伺い、何を作るか・何を作らないかを一緒に整理します。既存のシステムがある場合は、その状態も確認します。
-
4当社
進め方と契約形態のご提案
準委任契約(月額稼働)と請負契約のどちらが合うかを、進め方とあわせてご提案します。準委任契約では月額を定めて優先度の高い機能から順に進め、請負契約では仕様を先に確定してから金額を確定します。
-
5双方
契約の締結
契約書を取り交わします。必要に応じて、着手前に NDA(秘密保持契約)を結びます。
-
6双方
開発と確認
進捗と課題を随時共有しながら開発を進め、動くものを順にご確認いただきます。
-
7当社
納品・リリース
ご確認いただいた内容で、本番環境へリリースします。