Web 服务和 Windows 服务有什么区别?

问题描述 投票:0回答:9

Web 服务和 Windows 服务有什么区别?

我的经验主要是 Windows 服务,我从未创建过 Web 服务。

Web 服务的行为与 Windows 服务类似吗?
他们可以安排日程、在特定时间运行等吗?
您何时使用 Web 服务代替 Windows 服务,反之亦然?

web-services windows-services
9个回答
45
投票

它们几乎是两件事的不同之处。

Windows 服务是一种无需用户登录系统即可运行的应用程序,通常用于处理计算机上不需要用户干预即可使用的一些数据。

Web 服务是一个网站,在连接时,它(通常)以多种标准格式之一返回 XML 供服务使用者处理。

一个不能替代另一个。它们本质上是不同的。


12
投票

您要求我们比较苹果和橙子。我正在发布定义以及进一步阅读的链接,以便您可以了解为什么这两件事是排他性的并且不能像您尝试做的那样进行比较。

网络服务

Web 服务通常只是 Internet 应用程序编程接口 (API),可以通过网络(例如 Internet)访问,并在托管所请求服务的远程系统上执行

Windows 服务:

Windows 服务是一种长期运行的可执行文件,它执行特定的功能,并且设计为不需要用户干预。


3
投票

Web 服务是系统的 HTTP 接口。例如:Twitter API 或 Google Maps API 是 REST Web 服务。

Windows 服务是无需用户交互即可运行的后台进程。

两者没有关系。


2
投票

Web 服务只是一种公开服务以供消费的方式。它们是关于组件之间的交互。

Windows 服务是在计算机上长时间运行以执行某些任务的可执行文件。

您不会使用其中一个来代替另一个 - 它们执行两种完全不同的功能。

对于(一个简单的)示例(为了强调差异),如果您想要一种方法将控制消息传递到您的服务,您可以公开一个 Web 服务作为第三方与您的服务进行通信的协议。


1
投票

Web 服务是用于通过网络进行机器对机器通信的软件系统。

这里是 Web 服务 wiki。

Windows 服务,按照合同,是在本地计算机上运行的服务。

这是 Windows 服务的

wiki

它们是独立的技术,一种不会取代另一种。


1
投票
我不认为有很大的区别,Web 服务在 IIS 或 Apache 中运行,而 Windows 服务则不然。您可以使用远程调用调用 Windows 服务方法,并且可以使用 WCF 创建 Windows 服务。 Windows 服务的方法也可以返回 xml 或 json。

IIS 6 不支持所有 WCF 可能性,因此我们构建了 WCF Windows 服务(这称为自托管)。

Web 服务和 Windows 服务都是在后台运行的应用程序。您可以使用 WCF 来构建这两种服务。


0
投票
Web服务主要用于系统之间的应用集成。

windows服务主要用于后台任务、计划任务。

Windows服务程序可以调用Web服务方法。 Web服务程序无法调用窗口服务方法。


0
投票
Web 服务是由 Web 服务器托管的 dll,作为 Web 应用程序运行,可以根据请求启动。

Windows 服务是由操作系统托管的 exe,并持续运行以等待请求。


0
投票
除了 GEOCHET 所写的之外:它们之间还有根本的区别。 Windows 服务在 Windows 操作系统上运行,主要服务于计算机本身或本地网络上的本地用途。而Web服务是一种通用服务,原则上可以在安装在Web服务器上的任何操作系统上运行。其目的是让全球用户能够通过服务器预定义的专用 API 访问 Web 服务器公开的服务。事实上,服务器运行一个专用进程来公开此 API。

© www.soinside.com 2019 - 2024. All rights reserved.