2011-01-17 3 views
0

分離の懸念(SoC)は、アプリケーションが特定の機能単位に分割され、各ユニットが1つの懸念の必要性にしか対応しないようにすることを示唆しています。SoCまたはモノリシックコード?

私は、SoCが一般的にユーザー要求を処理するのに時間がかかるという練習シナリオが1つあります。たとえば、ソーシャルメディアのWebサイトで作業しているとします。ユーザーが別のユーザーから送信された招待状を受け入れると、通常、次のような処理が行われます。

  1. 招待状の有効性が確認されます。 (InvitationRepositoryがこれを行います)
  2. 友達が私のネットワークリストに追加されました。 (FriendRepositoryがこれを行います)
  3. 電子メールメッセージが追跡され、電子メールが友人に送信されます。

この場合、データベースへの3つのリクエスト(データベースはどこかにあります)を完了し、すべてが1つに存在する他のシナリオを比較すると完了するまで待つ必要がありますモノリシックコードを使用したデータベース呼び出し。

この場合、どちらが良いでしょうか?

答えて

0

意味があります。 SoCがアプリケーション標準のために維持することが重要な場合は、SoCを最適化する方法、またはSoCを引き続き使用する非同期プロセスを作成する方法を検討してください。使いやすさがSoCとSoCの回避策を上回る場合は、アーキテクチャ上の悪夢を作る理由の中でモノリシックなことをしてください。

最高のソリューションは、常に最高のスループットを提供するソリューションではありません。それ以外の場合、ASP.NET .aspx.cxページには、ビジネスロジック、データベースアクセス、Webサービス呼び出しなど、すべての懸念事項があります。これは、従来のASPアプリケーションの多くが10年以上前のことでした。