服务与应用
时间:2020-01-09 10:44:23 来源:igfitidea点击:
当我们开始学习面向服务的体系结构时,我们可能会想知道,服务和应用程序之间有什么区别。
没有服务或者应用程序的精确定义。服务和应用程序都是软件程序,但是它们确实倾向于具有一些不同的特征。我总结了下表中最常见的特征:
服务</ b> | 应用</ b> |
执行单个或者几个专门的 操作。 | 执行范围广泛的操作,甚至 甚至可以将其中一些操作公开为服务。 |
通常由其他程序访问。 | 人类经常(但并非总是)访问。 |
通常(但不总是)以更大的问题域的一部分为目标。 | 经常(但不总是)以整个 问题域为目标。 |
服务通常比应用程序针对更小,更孤立的问题。应用程序经常公开和调用服务,有时还会公开其他应用程序中的服务。很难比这更具体。以下是原因的示例:
邮件服务器(作为软件)可以被视为服务和应用程序。它在网络上某个服务器(硬件)上运行。它公开了2-3种主要服务:用于发送电子邮件的SMTP服务,以及用于通过其阅读电子邮件的POP3和IMAP服务。邮件服务器可能没有用户可以与之交互的用户GUI。他们可能只使用一些标准的电子邮件客户端。
邮件服务器可能具有管理员GUI。但是并不能保证。邮件服务器也可以仅通过配置文件进行配置。
我之所以仍将邮件服务器称为应用程序,是因为它公开了2-3个服务,供最终用户使用(尽管通过某些客户端应用程序使用),并且它针对整个问题域。但实际上,我们最好将其称为"邮件服务"。服务和应用程序之间的边界尚不清楚。