web-dev-qa-db-ja.com

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

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

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

WebサービスはWindowsサービスと同様に動作しますか?
スケジュールを設定したり、特定の時間に実行したりできますか?
Windowsサービスの代わりにWebサービスを使用する場合、またはその逆の場合はどうなりますか?

18
Ryan Abbott

それらは2つのことができるのと同じくらい異なっています。

Windowsサービスは、ユーザーがシステムにログインせずに実行されるアプリケーションであり、通常、ユーザーの介入を必要としないマシン上のデータを処理します。

Webサービスは、接続されると、サービスコンシューマーが処理するために、いくつかの標準形式の1つでXMLを(通常は)返すWebサイトです。

一方を他方に置き換えることはできません。それらは根本的に異なります。

41
Welbog

あなたは私たちにリンゴとオレンジを比較するように頼んでいます。定義とさらに読むためのリンクを投稿しているので、これら2つのことが排他的であり、あなたがやろうとしているように比較できない理由がわかります。

Webサービス

Webサービスは、多くの場合、インターネットなどのネットワーク経由でアクセスでき、要求されたサービスをホストするリモートシステムで実行できる、単なるインターネットアプリケーションプログラミングインターフェイス(API)です。

Windowsサービス

Windowsサービスは、特定の機能を実行し、ユーザーの介入を必要としないように設計された、長時間実行される実行可能ファイルです。

12
GEOCHET

Webサービスは、システムへのHTTPインターフェイスです。例:TwitterAPIまたはGoogleMapsAPIはREST Webサービスです。

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

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

3
John Cromartie

Webサービスは、単にサービスを公開して消費する方法です。それらは、コンポーネント間の相互作用に関するものです。

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

一方を他方の代わりに使用することはありません。これらは2つのまったく異なる機能を実行します。

(簡単な)例(違いを強調するため)の場合、制御メッセージをサービスに渡すメソッドが必要な場合は、サードパーティがサービスと通信するためのプロトコルとしてWebサービスを公開します可能性があります

2
Nader Shirazie

それほど大きな違いはないと思います。WebサービスはIISまたはApacheで実行されますが、Windowsサービスは実行されません。リモートを使用してWindowsサービスメソッドを呼び出すことができ、作成することができます。 WCFを使用したWindowsサービス。Windowsサービスのメソッドは、xmlまたはjsonも返すことができます。

IIS 6はすべてのWCFの可能性をサポートしているわけではないため、WCF Windowsサービスを構築しました(これはセルフホスティングと呼ばれます)。

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

1
tuinstoel

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

これが Webサービスのwiki です。

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

これが Windowsサービス用のwiki です。

それらは独立した技術であり、一方が他方に取って代わることはありません。

1
Joseph

Webサービスは、Webサーバーによってホストされ、Webアプリケーションとして実行されるdllであり、要求に応じてスピンアップできます。

Windowsサービスは、オペレーティングシステムによってホストされるexeであり、要求を待機して継続的に実行されます。

1
Marty STACK

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

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

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

0
dev2709