22

这个问题可能很愚蠢,但我真的很困惑。

我想实现一个软件即服务 (SaaS),我认为我可以使用 Visual Studio 和 WCF 来实现它。但我读过 WCF 和 Web 服务是 SOA 实现而不是 SaaS。

我可以使用 WCF 来实现 SaaS 吗?SaaS、SOA 和 Web 服务之间有什么关系?

4

1 回答 1

46

SaaS只是一种软件交付方法。可以这样想:您是软件提供商,您需要为客户提供他们想要使用的软件应用程序。但是您不会向他们出售 DVD 并说: “来!在您的服务器上安装它并使用它”。相反,您将应用程序托管在您自己的服务器上,并且 - 收取订阅费 - 为用户提供通过网络访问它的权限。它是应用程序的外部化(例如电子邮件、人力资源应用程序、会计和税收等)。

当我们谈论 SaaS 时,我们谈论的是提供一些业务服务的功能齐全的独立应用程序。

SOA与此类似,但处于较低级别。它不提供业务服务,而是提供小型隔离流程作为服务。

SOA 是一种构建软件的架构风格。这个想法是您通过将一组无状态、可重用、解耦的网络服务(例如Web 服务)放在一起(或与之交互)来构建您的应用程序。

我认为让人们感到困惑的是“服务”这个词。SaaS 和 SOA 都提供“服务”。但目标不同:SOA 为其他应用程序提供服务,而 SaaS 为用户提供服务。

您当然可以使用 SOA 来构建您的 SaaS 应用程序。这不是强制性的,但通常更可取。使用 SaaS,您可以为更多客户提供服务,并且将其构建在 SOA 架构之上,这使得应用程序比更单一的“全能”应用程序更容易扩展。

TL;DR:我将解释一下我在博客上读到的内容:

决定通过 Web 提供税收功能的是 SaaS。
SOA 使税务应用程序能够与 IRS 集成以进行电子申报和内部申报验证。

于 2013-01-11T21:17:01.667 回答