プロジェクト用のWebサイト(ASP.NET)といくつかのwinforms(.Net 2.0)(C#で記述)があります。ビジネス内で電子メールを送信するなど、両方が必要なタスクに web サービス (IIS6) を使用します。
私はWebサービスは素晴らしいと思いますが、あなたの経験から、 Webサービスにすべきこととすべきでないことを教えてください。
プロジェクト用のWebサイト(ASP.NET)といくつかのwinforms(.Net 2.0)(C#で記述)があります。ビジネス内で電子メールを送信するなど、両方が必要なタスクに web サービス (IIS6) を使用します。
私はWebサービスは素晴らしいと思いますが、あなたの経験から、 Webサービスにすべきこととすべきでないことを教えてください。
私の意見では:
Webサービスは、次のようなコード用に予約する必要があります
1つの例は、複数のアプリケーションがアクセスする必要があるカスタムビジネスロジックです。
Webサービスに入れたくないコードは次のとおりです。
サービス指向アーキテクチャが限定的であるように思えますが (少なくとも、それはあなたが目指していることだと思います)、Gartner によれば、それはあなたがすぐに金持ちになることを意味します。:)
私にとっての SOA の利点は、関係するシステムの異質性に帰着することがわかります (すべて .NET であるため、あなたのシステムはそれに該当しないように思えます)。確かに、SOA に XMLは必要ありませんが、現在は XML が主流です。
しかし、帯域幅や解析のペナルティを気にしなければ、誰が気にするでしょうか? 1 分間に 10,000 回のサービス コールを処理していない可能性があります。このスタイルの実装では、サブの代わりに WS のみを使用してDRYに従っており、複数のシステムと本質的に互換性のある標準に準拠しています。
より悪いアプローチがあります。
Web サービス/SOA の新しいトレンドは、ホスト アプリケーションが使用できる軽量の中間層を多かれ少なかれ公開することのようです。(あなたの例のように)サービスを介して個々のメソッド呼び出しを公開する代わりに、SOA指向のアプリケーションには、「従来の」中間層アセンブリとして機能する広範なデータ/操作コントラクトがあります。