考虑到 n 层应用程序的常规特征,其中包括:表示层、业务层、数据访问层;这通常怎么样rebuilt打造面向服务的架构(SOA)?
向在此练习中经验丰富的程序员寻求高层次的概述。
在某种程度上,我认为它在概念上是扁平化的,而不是有一个垂直的堆栈。或者作为一系列水平模块,每个模块封装自己的迷你 n 层堆栈。中间有更重的协议用于消息传递。
SOA 和 n 层是有些不同的概念。 n 层通常是关于构建独立应用程序的应用程序架构(可能有一些与其他应用程序等定义的接口)。
SOA 退后一步,着眼于整个企业所需的业务服务范围以及应在何处提供这些服务,以减少重复。这些很可能构建或重用现有 n 层应用程序的元素。例如,可能有许多允许创建订单的现有应用程序(例如销售团队基于内联网客户端的应用程序、网站在线应用程序等),然后需要在某个时刻同步或聚合其数据。相反,可以创建“下订单”服务,该服务可以由许多不同的前端应用程序重用。
这些初始服务很可能基于现有应用程序中的功能而存在,然后将其包装在业务服务中以提供可重用的接口。
然后,您可能会考虑以不同的方式(编排)将多个服务链接在一起以提供组合服务 - 例如place_order 之后是对供应商公司服务的可选调用,以便在库存水平低于特定水平时重新进货仓库,并进一步调用计费服务来创建发票等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)