2009-03-17 7 views
2

Webサービスを最初から作成したり、既存のアプリケーションを分割したりすることはあまりありませんでした。 Webサービスがクラスと同じようにエンティティをカプセル化する必要がありますか、またはサービスに多かれ少なかれそれがあるべきですか?モノリシックアプリケーションをWebサービスに分割するにはどうすればよいですか?

これは、ニーズが何であるかをケースバイケースで分析したものですが、一般的なガイドラインやベストプラクティス、さらにはWebサービスの退役軍人が相対初心者?

答えて

1

私たちのWebサービスは、機能領域を中心に構築されています。時にはこれは単一のエンティティのためのものであり、それ以上のものもあります。

たとえば、CRMを使用している場合、Webサービスの1つが連絡先の管理を中心とする場合があります。作成、更新、検索など。バッチタイプの処理を行う場合、ジョブを作成して送信するWebサービスが存在することがあります。

ウェブサービスが処理オーバーヘッドに追加されていることに留意してください。主にデータをシリアライズ/デシリアライズする際に、データをワイヤ全体に渡って渡します。このため、主なメリットはスケーラビリティだけです。複数のマシンを介してサービスを実行する能力のためにトランザクション処理時間当たりに増加することを意味します。

Webサービスを開始する主な部分は、複数のアプリケーションに共通する領域、公開する予定の領域、または負荷分散の向上によるメリットがある領域です。

もちろん、ボトルネックが本当にどこにあるかを確認するには、アプリケーションを分析する必要があります。場合によっては意味をなさない。たとえば、コードを共有していない単一のアプリケーションがある場合、またはボトルネックが主にデータベースに関連している場合。

0

ウェブサービスは、ウェブ向けサービスのようなものです。

Webサービスは、アプリケーションのサービスレイヤのAPIとして構築する必要があります。

サービスは、通常、単一のクラスより大きなエンティティをカプセル化します。

サービスレイヤーとサービスレイヤーを追加するためのリファクタリングの詳細については、DDDを参照してください。

グッドラック

0

数1の質問です:どのような目的を達成するために、あなたのアプリケーションの機能は、Webサービスの束としてconsumnedされるようにリファクタリングされていますか?

関連する問題