5G Edge and Cloud Native Architectures
591 浏览 5 years, 10 months
2.1 What is orchestration?
版权声明: 转载请注明出处 http://www.codingsoho.com/What is orchestration?
Definition:
Orchestration describes automated arrangement, coordination, and management of complex computer systems, and services.
It is often discussed as having an inherent intelligence or even implicitly autonomic control, but those are largely aspirations or analogies rather than technical descriptions. In reality, orchestration is largely the effect of automation or systems deploying elements of control theory.
This usage of orchestration is often discussed in the context of service oriented architecture, virtualization, provisioning, Converged Infrastructure and dynamic datacenter topics. Orchestration in this sense is about aligning the business request with the applications, data and infrastructure.
Cloud service orchestration therefore is the:
- Composing of architecture, tools and processes by humans to deliver a defined service
- Stitching of software and hardware components together to deliver a defined Service
- Connecting and automating of work flows when applicable to deliver a defined service
It is critical in the delivery of cloud services because:
- Cloud is all about scale – automated work flows are essential[weasel words]
- Cloud service delivery includes fulfillment assurance and billing
- Cloud services delivery entails work flows in various technical and business domains
Source: Wikipedia - Orchestration (computing)
SOA中的两个概念:编制(orchestration)和编排(choreography)
以下是摘自《Understanding SOA with Web Services》(中文版)关于两个概念的解释: 编制(orchestration)和编排(choreography)是常用于描述“合成Web服务的两种方式”的术语。虽然它们有共同之处,但还是有些区别的。Web服务编制(Web Services Orchestration,WSO)指为业务流程(business processes)而进行Web服务合成,而Web服务编排(Web Services Choreography,WSC)指为业务协作(business collaborations)而进行Web服务合成。
WSO关注于以一种说明性的(declarative)方式(而不是编程的方式)创建合成服务。WSO定义了组成编制(orchestration)的服务,以及这些服务的执行顺序(比如并行活动、条件分支逻辑等)。因此,可以将编制(orchestration)视为一种简单的流程,这种流程自身也是一个Web服务。WSO流通常包括分支控制点、并行处理选择、人类响应步骤以及各种类型的预定义步骤(例如转换、适配器、电子邮件及Web服务等)。
WSC关注于定义多方如何在一个更大的业务事务中进行协作。WSC通过“各方描述自己如何与其他Web服务进行公共消息交换”来定义业务交互,而不是像WSO中那样描述一方是如何执行某个具体业务流程的。 在用WSC来定义业务交互时,需要一个对“业务流程在交互过程中所使用的消息交换协议”的正式描述,对在“有状态的、长期运行的、涉及多方的流程”中的对等的(peer-to-peer)消息交换(同步的或异步的)进行建模。
WSO与WSC的关键区别在于:WSC是一种对等模型(peer-to-peer model),业务流程中会有很多协作方;而WSO是一种层次化的请求者/提供者模型(hierarchical requester/provider model),WSO仅定义了应调用什么服务以及应该何时调用,没有定义多方如何进行协作。