SOA的相关概念

1.SOA的定义

面向服务的体系结构(Service-Oriented Architecture,SOA),从应用和原理的角度看,目前有两种业界公认的标准定义。

从应用的角度定义 ,可以认为SOA是一种应用框架,它着眼于日常的业务应用,并将它们划分为单独的业务功能和流程,即所谓的服务。SOA使用户可以构建、部署和整合这些服务,且无需依赖应用程序及其运行平台,从而提高业务流程的灵活性。这种业务灵活性可使企业加快发展速度,降低总体拥有成本,改善对及时、准确信息的访问。SOA有助于实现更多的资产重用、更轻松的管理和更快的开发与部署。

从软件的基本原理定义 ,可以认为SOA是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以一种统一和通用的方式进行交互。

作为软件架构师,后一种从软件原理方面的定义,对日常工作更具指导性。

2.业务流程与BPEL

业务流程是指为了实现某种业务目的行为所进行的流程或一系列动作。在计算机领域,业务流程代表的是某一个问题在计算机系统内部得到解决的全部流程。

由于业务流程来源于现实世界,传统上是通过复杂的语言进行描述。在计算机业务系统建模中,需要用到一种特定的、简洁的语言来专门描述计算机系统的业务流程,这便促使了BPEL的诞生。

**BPEL(Business Process Execution Language For Web Services)**翻译成中文的意思是面向Web服务的业务流程执行语言,也有的文献简写成BPEL4WS,它是一种使用Web服务定义和执行业务流程的语言。使用BPEL,用户可以通过组合、编排和协调Web服务自上而下地实现面向服务的体系结构。BPEL提供了一种相对简单易懂的方法,可将多个Web服务组合到一个新的复合服务(称作业务流程)中。

BPEL目前用于整合现有的Web Service,将现有的Web Services按照要求的业务流程整理成为一个新的Web Services,在这个基础上,形成一个从外界看来和单个Service用于的Service。

相关推荐
张子都3 小时前
【新版系统架构设计师】备考
职场和发展·系统架构·软件工程
空中海11 小时前
第一章:Android 系统架构与核心原理
android·系统架构
FrontAI13 小时前
Next.js从入门到实战保姆级教程:实战项目(上)——全栈博客系统架构与核心功能
开发语言·前端·javascript·react.js·系统架构
Code-keys13 小时前
【WEKWS】论文解读 && 语音唤醒系统架构详解 && 实战
系统架构·音频·语音识别
ZHENGZJM13 小时前
项目复杂度评估与系列博客大纲生成
系统架构·ai应用
码云社区1 天前
上门做饭系统架构设计:基于Spring Cloud的微服务实践与源码解析
spring cloud·微服务·系统架构
2603_954708311 天前
多微电网系统架构:集群协同与能量互济的网络设计
网络·人工智能·分布式·物联网·架构·系统架构
cvvoid2 天前
2026年 , 最新的机器人系统架构介绍 (1)
系统架构·机器人
深山技术宅2 天前
OpenClaw 系统架构深度解析
人工智能·ai·系统架构·openclaw
xcLeigh2 天前
飞算 JavaAI 进阶实战:从代码生成到系统架构优化的全流程指南
java·系统架构·代码生成·java开发·飞算javaai炫技赛·javaai·飞算