ユーザーアイコン

mizuko

3か月前

0
0

Nest.js モジュラーアーキテクチャの辛いところ

Nest.js
アーキテクチャ

Nest.jsのデフォルトのアーキテクチャは、モジュラーアーキテクチャや3層アーキテクチャなどと呼ばれる 実際に実装してみて、辛かったところをメモ

  • userとdatabaseなど、domain的なモジュールとinfrastructure的なモジュールが同階層に並ぶのが違和感
    • DDDに慣れてしまっている故の違和感かもしれない
    • 実際に迷った具体例として、s3に関する処理を置く場所に迷った
  • モジュール毎の依存関係が分かりづらい
    • DDDの様に中心円へ向かって依存しているわけではないので、モジュールを数珠つなぎに確認していく必要がある
  • マクロサービスを強く意識しているが、実際にマイクロサービスを採用するのは稀
    • 実際に実運用させるには、インフラ側の知見が非常に重要になる&オーバースペックになる可能性があるため、不採用になるパターンが多い(体感)
    • であるなら、このアーキテクチャじゃなくて良くね?となる
    • 逆に、将来マイクロサービス化を考えているならば採用しても良いかもしれない