以前、私のASP.NETWebアプリケーションはADO.NETを使用してデータベースに直接接続していました。次に、ASP.NETレイヤー、ミドルWebサービスレイヤー、バックエンドデータベースレイヤーの3つのレイヤーに変更します。データソースをASP.NETフロントレイヤーに抽象化し、緩く結合し、潜在的なセキュリティリスクを減らして、外部に公開されたASP.NetWebアプリケーションがデータベースに直接アクセスできるようにするなどの利点があると思います。
2層アーキテクチャと3層アーキテクチャを比較すると、2つの大きな問題が発生しました。
追加の中間Webサービスレイヤーでは、より多くのトラフィックが発生します。たとえば、ASP.NETはデータベースと直接通信しませんが、Webサービスと通信し、Webサービスがデータベースと通信すると、より多くのトラフィックが発生します。ボトルネックになりますか?ボトルネックの場合、この問題を解決するための一般的なアドバイスはありますか?
ASP.NETはデータベースに接続できませんが、Webサービスに接続できるため、DataSet/DataTableオブジェクトを簡単に取得できません。テーブルフォームデータをデータバインドされたコントロールに提示することが難しくなります。ASP.NETのプレゼンテーション層のコーディングを容易にするためのアイデアはありますか?
よろしく、
ジョージ