SOA简介
SCA实现SOA的最佳方式
Apache开源框架Tuscany实现SCA架构

SOA简单描述:

SOA(Service-Oriented Architecture)面向服务的体系架构。为了能够深入理解还专门查了单词:Oriented:面向,Architecture:架构,没办法英语太烂!实际上是一个组件模型,他将应用程序的不同功能单(称为服务)通过定义良好的接口联系起来。SOA建立在Web服务的基础之上,他可以看做B/S模型、XML/Web Service 技术之后的自然延伸。

对于以上内容摘自《Java高手真经》,看了之后未免会让人产生以下几点疑问?

  1. SOA为什吗建立在Web服务基础之上?
  2. 神马是Web服务?
  3. 为什吗说是B/S模型、XMl/Web Service的技术延伸?

SOA官方定义:

SOA是一种架构模型,不是一种技术,而是一种样式。他根据需求通过网络松散耦合的粗粒度应用组件进行分布式部署

、组合和使用。SOA的核心是“服务”,本质就是服务组合起来对外提供接口。

刚开始看这些名词和解释,实在是晦涩难懂啊!对于一个语言不好的人来说太TM折磨了!

鉴于如此:本人对于SOA举一例,以供和自己一样的笨笨自勉。

看了上面两张图片是不是有点感慨了!

这就是我们小时候有玩过的垒积木,对于积木的每一个组建我们都可以看成是SOA架构里服务,所谓的服务分布式应用、组合无非就是我们拿着那些积木按照一定规则拼成我们自己想要的模型。

所以最关键的是我们如何拼积木?(问题四)。

SCA实现SOA的最佳方式

SCA(Service Component Architecure)服务组件体系结构是一种规范,SCA强调将服务的实现和服务的组装分离开来。

组建的实现:提供服务或使用其他服务。

组件的组装:通过将服务引用连接到服务来完成?

为什吗选择使用SCA实现SOA呢?简单的说Sping 实现了单机应用程序的IoC模型,SCA实现了分布式应用的IoC模型,鉴于spring在JAVAEE中的地位和优势,对于SCA也是可想而知的。

Tuscany实现SCA架构简单DEMO

首先下载:http://tuscany.apache.org/sca-java-2x-releases.html

我们要做的就是在本机运行sample里面的HelloWorld.

打开Eclipse新建动态Web Project目录结构如下:

通过maven导入jar包即解压路径下lib下面或者直接将例子中的pom文件引入使用:

将HelloWord例子中的文件copy到对应目录下,运行即可。俗话说的好“授人以鱼不如授人以渔”。通过此番折腾相信大家都可以入门了。另外提供一个仁兄的SCA插件,有了它我们打开X.composite再也不是一片黑了!

http://dl.iteye.com/topics/download/22efadbd-edb4-3cce-a3ec-0173f912e12c

对于本章遗留问题,尚不能作出明确解决,待后续补充!

面向服务的架构SOA的更多相关文章

  1. 集成架构:对比 Web API 与面向服务的架构和企业应用程序集成(转)

    http://kb.cnblogs.com/page/521644/ 摘要:总体上讲,SOA 和 Web API 似乎解决的是同一个问题:以实时的.可重用的方式公开业务功能.本教程将分析这些举措有何不 ...

  2. (转)集成架构:对比 Web API 与面向服务的架构和企业应用程序集成

    摘要:总体上讲,SOA 和 Web API 似乎解决的是同一个问题:以实时的.可重用的方式公开业务功能.本教程将分析这些举措有何不同,以及如何将它们融入到一个不断演变的集成架构中.文中还将讨论 API ...

  3. 亚马逊如何变成 SOA(面向服务的架构)?

    阮一峰 日期: 2016年9月10日 上一篇文章,我摘录了<程序员的呐喊>.这本书有趣的内容太多,今天再摘录一段. 1. 亚马逊公司不仅是世界最大的网络书店,还是世界最大的云服务商.它是怎 ...

  4. 面向服务体系架构(SOA)和数据仓库(DW)的思考基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台

    面向服务体系架构(SOA)和数据仓库(DW)的思考 基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台 当前业界对面向服务体系架构(SOA)和数据仓库(Data Warehouse, ...

  5. 面向服务的架构(SOA)

    SOA架构基础概念 面向服务的架构(SOA) 在深入探讨什么是面向服务的架构(SOA)之前,先建立一些基本的概念和术语的基本描述而非严格定义,所以也许有些定义在业内还存留争议,此处暂且忽略. 架构基础 ...

  6. SOA(面向服务的架构)

    前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层分布式框架开发,以此适用于企业信息系统的业务处理,是本文论述的重点.此外,插件技术的应用,富客户端JQ ...

  7. 亚马逊如何变成 SOA(面向服务的架构)

    . 亚马逊公司不仅是世界最大的网络书店,还是世界最大的云服务商.它是怎么实现从电商到云商的转变呢? 一切都是CEO杰夫·贝索斯促成的,他对市场有着超乎常人的理解和预见. 2. 2000年前后,贝索斯有 ...

  8. SOA (面向服务的架构)-Service Oriented Architecture

    SOA (面向服务的架构) 编辑 面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立 ...

  9. 面向服务体系架构(SOA)和数据仓库(DW)的思考

    摘要: 当前业界对面向服务体系架构(SOA)和数据仓库(Data Warehouse,DW)都介绍的很多,提出了很多优秀的解决方案,但是一般是把 SOA 和 DW 单独考虑,SOA 和 DW 有着共同 ...

随机推荐

  1. Appium+Robotframework实现Android应用的自动化测试-6:一个简单的例子

    万事具备,只欠编码! 下面看一个简单的示例,这个示例验证Android手机自带的通讯录的添加联系人的操作是否成功.这个例子是Appium官网自带的示例,有兴趣的同学也可以自己下载来研究和学习,下载地址 ...

  2. 解读Unity中的CG编写Shader系列八(多光源漫反射)

    转自http://www.itnose.net/detail/6117338.html 前文中完成最简单的漫反射shader只是单个光源下的漫反射,而往往场景中不仅仅只有一个光源,那么多个光源的情况下 ...

  3. ACM/ICPC 之 差分约束系统两道(ZOJ2770-POJ1201)

    当对问题建立数学模型后,发现其是一个差分方程组,那么问题可以转换为最短路问题,一下分别选用Bellmanford-SPFA解题 ZOJ2770-Burn the Linked Camp //差分约束方 ...

  4. Java for LeetCode 226 Invert Binary Tree

    Invert a binary tree. 4 / \ 2 7 / \ / \ 1 3 6 9 to 4 / \ 7 2 / \ / \ 9 6 3 1 Trivia: This problem wa ...

  5. 请确认 <Import> 声明中的路径正确,且磁盘上存在该文件。

    在网上下了个源码打开报错. 请确认 <Import> 声明中的路径正确,且磁盘上存在该文件. 一查,原来是路径错误. 解决办法:将项目文件(.csproj)用记事本打开,然后找到<I ...

  6. 模拟操作网页 webBrowser

    C# 获取IFrame中body元素 (winform) 方法1. 找出iframe的b.html的src , 利用webbrowser去加载b.html HtmlElementCollection ...

  7. 通过颜色代码初始化UIColor

    #define UIColorFromHEX(rgbValue) [UIColor \ colorWithRed:((float)((rgbValue & 0xFF0000) >> ...

  8. 在springMVC的controller层获取view层的参数的方式

    方法一:request.getParameter("name") 方法二:注解@RequestParam @RequestMapping("testRequestPara ...

  9. Oulipo(poj 3461)

    题意:求b这个字符串在a中出现的次数 这里不用KMP,用hash #include<cstdio> #include<iostream> #include<cstring ...

  10. bnuoj 24251 Counting Pair

    一道简单的规律题,画出二维表将数字分别相加可以发现很明显的对称性 题目链接:http://www.bnuoj.com/v3/problem_show.php?pid=24251 #include< ...