Nexuralエコシステムは、トレーディングダッシュボード、Discordボット、リサーチエンジン、アラートシステム、ニュースレタースタジオ、戦略トラッカー、自動化スイートという7つの相互接続されたシステムで構成されています。
当然、これはマイクロサービスアーキテクチャだと想像するでしょう。しかし違います。これはモジュラーモノリスであり、意図的な選択でした。
意思決定のフレームワーク
私は3つの質問をしました:
エンジニアは何人いるか? 1人(私です)。マイクロサービスは運用オーバーヘッドを増大させます。エンジニアが1人であれば、新しいサービスごとに別のデプロイパイプライン、別の監視設定、午前2時にデバッグすべき別の障害モードが発生します。
モジュールに独立したスケーリングは必要か? まだ必要ありません。トレーディングダッシュボードとリサーチエンジンはどちらもVercel上で動作しています。別々のインフラを正当化するような異なるスケーリングプロファイルはありません。
モジュールに異なる技術スタックは必要か? 部分的に必要です。DiscordボットはNode.js、アラートシステムは.NETです。これらは必然的に別々のサービスとなります。しかし、WebアプリはすべてNext.js/TypeScriptであり、型、ユーティリティ、データベースアクセスを共有しています。
「モジュラーモノリス」の実際の意味
コードベースは1つのリポジトリとして構成され、明確なドメイン境界を持っています:
\
