現在、SOAP またはより単純な HTTP REST のようなアプローチを使用して Web API を作成しています。同時に、サーバーとクライアントを多かれ少なかれ独立して進化させる方法が複数あります。これは大きな利点だと思います。
主な欠点の 1 つは、HTTP の使用に伴うオーバーヘッドがあることです。アプリケーションがデータベースに直接アクセスする代わりに、サービス API を使用してデータを公開することを増やす予定です。HTTP を使用するとオーバーヘッドが大きくなり、レイテンシが増加することが懸念されます。もちろん、キャッシングを利用することもできますが、それによって複雑さも増します。
提案の 1 つは、はるかにパフォーマンスが高いはずの WCF NetTcp バインディングを使用することです。このテクノロジーを選択すると、サーバーとクライアントを独立して進化させるという REST の利点が失われるのではないかと心配しています。密結合を犠牲にしてパフォーマンスを向上させると思います。
私の質問は次のとおりです。WCP NetTcp バインディングを使用して、すべてのクライアントを更新することなく API を進化させることは可能ですか? 言い換えれば、このバインディングを使用する場合、クライアントとサーバーの間にどの程度の結合が期待できるでしょうか?