2009-06-23 16 views
15

WebサービスとWindowsサービスの違いは何ですか?WebサービスとWindowsサービスの違いは何ですか?

私の経験はほとんどがWindowsサービスであり、Webサービスを作成したことはありません。

ウェブサービスはWindowsサービスと同様に動作しますか?
スケジューリングしたり、特定の時間に実行したりできますか?
Windowsサービスの代わりにWebサービスを使用する場合、またはその逆の場合は、

答えて

38

2つのものとほぼ同じです。

Windowsサービスは、システムにログインしていない状態で実行されるアプリケーションです。通常、ユーザーの介入が不要なコンピュータ上のデータを処理します。

Webサービスは、連絡を受けると、サービスコンシューマが処理するいくつかの標準形式のいずれかでXMLを返します(通常は)。

1つを他のものと置き換えることはできません。彼らは根本的に異なっています。

+6

+1、JSONはレスポンスフォーマットの一般的な第2のオプションです – cgp

+0

本当に違いはありますか?オンデマンドでMSMQから受信したメッセージを処理するWindowsサービスがある場合。オンデマンドでHTTPリクエストを処理するWebサービスとは大きく異なりますか? –

+0

@Welbog今年の初め(私たちのカレンダーで)、私はインタビューをしました。正直言って、私は人と触れ合っていたプログラマーでしたが、Webベースのアプリケーションでは一度も働いていませんでした2005年頃のフォーム、MVCのハローワールド)、...だから私の「CV」のために、同社は電話をかけてインタビューに行ったが、うまくいった。 Webサービスとwidnwosの違いについて、そして難しい部分は、企業内で重要なデータを送信するためにWebサービスを使用することができます...そのため、その使用法、詳細、および好みについて教えてください。 – deadManN

12

リンゴとオレンジを比較するようにお願いしています。私は定義を掲示しています。あなたのためにさらに読むためのリンクがあります。なぜあなたはこれら2つのことが排他的で、あなたがしようとしているように比較することができないのかを知ることができます。

Web service

Webサービスはしばしば、インターネットなどのネットワークを介してアクセスし、

要求されたサービスをホストするリモートシステム上で実行することができるだけでインターネット・アプリケーション・プログラミング・インターフェース(API)である

​​:

Windowsサービスが特定のFUNCTを行い、長時間実行実行可能ですユーザの介入を必要としないように設計されている。

+0

WCF契約を作成してWindowsサービスでホストするとき、私たちはAPIを提供しているのですが、それは何ですか? Windowsサービス...またはWebサービス(私たちが知らないうちに、いくつかのバックグラウンドWebホスティングサービスを実装して実行するなど) – deadManN

2

Webサービスは、単にサービスを消費するための手段です。それらはコンポーネント間の相互作用に関するものです。

Windowsサービスは、何らかのタスクを実行するためにマシン上で長時間実行される実行可能ファイルです。

もう一方の代わりに1つを使用しないでください。全く異なる2つの機能を実行します。

メソッドがコントロールメッセージをサービスに渡すようにしたい場合は、は、サードパーティがサービスと通信するプロトコルとしてwebserviceを公開することができます。

1

ウェブサービスは、ネットワークを介したマシン間の通信に使用されるソフトウェアシステムです。

ここにはwiki for Web Serviceです。

Windowsサービスは、契約では、ローカルマシン上で実行されるサービスです。

ここにはwiki for Windows Serviceです。

これらは独立した技術であり、一方は他方を置き換えません。

3

Webサービスは、システムへのHTTPインタフェースです。たとえば、Twitter APIまたはGoogle Maps APIはREST Webサービスです。

Windowsサービスは、ユーザー操作なしで実行されるバックグラウンドプロセスです。

2つは関連していません。

0

Webサービスは、システム間のアプリケーション統合に使用されました。

Windowsサービスは、主にバックグラウンドタスク、スケジュールされたタスクで使用されました。

Windowsサービスプログラムは、Webサービスメソッドを呼び出すことができます。 Webサービスプログラムは、ウィンドウサービスメソッドを呼び出すことができません。

+0

Webサービスプログラムは、ウィンドウサービスメソッドを呼び出すことができます。 – tuinstoel

1

私は非常に大きな違いはないと思う、WebサービスはIISまたはApacheで動作し、Windowsサービスは動作しません。リモーティングを使用してWindowsサービスメソッドを呼び出すことができ、WCFを使用してWindowsサービスを作成できます。 Windowsサービスのメソッドは、xmlまたはjsonも返すことができます。

IIS 6はすべてのWCFの可能性をサポートしていないため、WCFウィンドウサービスを構築しています(これは自己ホスティングと呼ばれます)。

ウェブサービスとWindowsサービスの両方は、バックグラウンドで実行されるアプリケーションです。 WCFを使用して、両方の種類のサービスを構築できます。

+2

WCFを使用してWindowsサービスを構築するのではなく、WindowsサービスでWCFサービスをホストすることができます。 :) – markt

関連する問題