首页 > 其他分享 >云计算中SOA是什么?

云计算中SOA是什么?

时间:2023-04-23 16:33:41浏览次数:45  
标签:SOA 服务 思想 什么 开源 ESB 计算 单元

云计算中SOA是什么?SOA 是面向服务的架构,即企业的 IT 系统是由服务组成的,也即企业的各个应用系统是由许多标准的服务件“组装”起来的,组成应用系统中的各个服务之间是一种非常松耦合的关系。

Gartner 公司在 1996 年进一步提出了 SOA 的概念,意为面向服务的架构,本质上是面向服务的思想在企业 IT 架构方面的应用。面向服务的思想,是面向对象思想之后的一种新的思想模式,其核心特征就是以松耦合、粗粒度的服务单元来构建软件。作为一种思想,SOA 不涉及任何具体的实现技术细节,但是思想终归要落地才会带来社会效益。

云计算中SOA是什么?_SOA

人们发现,企业服务总线(简称为 ESB)是实现 SOA 的主要技术之一,于是 ESB 也就成为 SOA 的核心技术基础。当然,不用 ESB 也不能说你的系统就不是 SOA,比如现在流行的微服务就是 SOA 的一种具体实现,它采用容器对服务打包。SOA 所实现产品的核心任务是管理企业中的服务单元,具体的任务可分解为:服务单元的登记、服务单元的调用、服务单元的运行、服务单元的部署、用户管理界面,以及安全控制等。

服务与模块的主要区别在于:模块相当于汽车发动机的零配件,而服务就相当于发动机本身,发动机可以独立运转,而零件就不行。

函数一般由开发语言编译器的公司提供,如 C 语言编译器有微软的 Visual C++、Borland 公司的 Borland C、开源组织提供的 GCC 等,框架一般由软件开发厂商或开源组织提供,如 Django、Drupal、JSON、Spring、jQuery 等,而服务一般由运营商提供。

如果感觉自学的比较吃力,不如系统的学习,零基础永远不是借口,没时间永远不是借口,坚持学习才是我想要传递的!抓住千锋逆战班直播体验课的机会,用勤奋与汗水,铸就美好的明天。在下方留言即可试听课程外加领取千锋900G+视频教程。

企业的软件应用系统和服务的关系像极了人类社会中的项目和人的关系,企业要实施一个项目,先去人才网站招聘各种人员组建团队,然后团队成员各司其职,共同完成项目。

求职者事先要在人才招聘网站注册并发布简历,然后等待招聘电话。那么在 SOA 中,也有一个类似人才网站的机构,服务必须先在这个机构里注册,当有需求的时候,其他服务或者应用系统就会在这个机构里搜索能满足需求的服务,并且调用这些服务来完成某个任务。服务像孙悟空一样具备分身术,即同一个服务能分身出很多个体,这些个体分别被其他服务调用,这一点又与现实生活中的求职者不同。

服务是无状态的,即服务在被调用前后本身没有变化,且同一个服务允许同时在多台计算机上运行,这样就能轻松实现高可用性计算及负载均衡集群,最终我们可以想象一下,企业的很多台服务器上运行着各种各样的标准服务,众多的应用系统对应各自的服务调用关系描述表,“组装”一个应用软件由公司文员即可快速轻松地完成。

在云端,由于应用繁多且由一家公司运营,所以云运营公司是采用 SOA 的最佳场所。可以预计,在云计算时代,SOA 将得到广泛应用。在业界,也有人认为云计算将是 SOA 的终结者,这个观点把不同层次的东西混为一谈,云计算不是新的技术和思想,它只是人们使用计算资源的一种模式,而 SOA 是一种全新的软件构架思想。

目前部署 SOA 的应用环境有开源产品和商业产品,开源产品有 WSO2、Dubbo 和 Mule ESB,后者侧重于企业服务总线,不是一个完整的 SOA 套件,这三个开源产品是用 Java 语言开发的,另外一个 ZATO 开源项目是采用 Python 语言开发的;商业产品有 Oracle SOA 套件和 IBM SOA 基础栈等。

标签:SOA,服务,思想,什么,开源,ESB,计算,单元
From: https://blog.51cto.com/u_15739596/6218186

相关文章

  • SAP 可以计算和发布上月标准成本吗?
       ......
  • 为什么再html页面引用element复选框,只有名称值,没有复选框
    问题描述我引入了el-checkbox之后,发现浏览器页面只是显示里面的文字,并没有显示出来我想要看到的相应样式问题解决经过一定的百度查证可知,使用Element-UI组件时,我们需要用div标签将其包裹起来;然后使用script标签定义一下div里面的id属性,然后才能够引用到这个el-标签,让其中的样......
  • 阿里云1+X云计算开发与运维实战——云存储访问的授权管理
    实验概述    现代企业中,不同的岗位拥有不同的权限。比如会计对能够查看、修改公司的账务;人事可以调动、编写公司员工的个人档案;总经理管理公司的所有事务......在网络应用中考虑到安全和管理方面的需求,我们也会为用户授予相应的权限,管理网络资产。           ......
  • Jtti:XManager是什么?主要功能和优势有哪些?
       XManager是什么软件?XManager是一款高性能的X11R7PCX服务器,可以应用到Windows应用程序中。在UNIX/Linux和Windows网络环境中,XManager是更好的连通解决方案。下面一起来看下XManager主要功能和优势介绍。XManager主要功能和优势介绍:1、性能优越当利用一个PCX服务器,精度和......
  • 计算变量长度
    多种统计长度的命令统计命令的长度[root@localhostmnt]#name="zhoujielun"[root@localhostmnt]#echo${#name}10[root@localhostmnt]#echo${name}|wc-L10#exprexprlength"{$name}"#awkecho"${name}"|awk'{printlength($0)}'......
  • 有什么好用的远程工具吗
    沟通在任何类型的工作中都扮演着重要的角色。但当谈到远程工作时,这一点就更为重要。因此,您的组织必须找到可以让您的团队保持一致的工具。在某些方面,项目管理扮演着类似的角色。您会注意到,下面的大多数工具都会直接影响您的公司如何沟通和管理他们的工作。远程办公,需要好的远程......
  • 阿里云1+X云计算开发与运维实战——云监控初体验
    实验概述本实验会自动创建一台已部署Nginx的ECS实例和一台负载均衡SLB实例。首先,使用阿里云云监控的 云服务监控 服务,配置并查看ECS实例和SLB实例的监控数据。然后,设置ECS实例的报警规则,并验证报警规则生效。之后,使用 站点监控 服务,监控已部署Nginx的站点的状态,并设置站点报警......
  • Java 静态泛型方法为什么要在返回值之前使用泛型
    静态方法定义静态泛型方法要在返回值之前使用泛型声明此方法为泛型方法:/***泛型方法的基本介绍*@paramtClass传入的泛型实参*@returnT返回值为T类型*说明:*1)public与返回值中间<T>非常重要,可以理解为声明此方法为泛型方法。......
  • 软件测试工程师具体工作内容是什么?
    使用各种测试技术和方法来测试和发现软件中存在的软件缺陷。测试技术主要分为黑盒测试和白盒测试两大类。其中黑盒测试技术主要有等价类划分法、边界值法、因果图法、状态图法、测试大纲法以及各类典型的软件故障模型等;白盒测试的主要技术有语句覆盖、分支覆盖,判定覆盖、基本路径覆......
  • HashSet以及TreeSet实现了哪些接口?有什么作用?
    HashSet简介HashSet是Java集合框架中非常常用的一种无序、不可重复的集合。它是通过哈希表来实现的,可以快速检索元素并消除重复。泛型的作用泛型可以帮助我们在编译时就发现类型错误,从而减少了运行时错误的发生。在使用HashSet时,我们通常会指定它的泛型类型为某个具体的类或接......