SOA(service oriented architecture)面向服务 架构是很多企业现在正在探究的问题。

那么什么是面向服务的架构呢,最简单的解释就是以服务为中心的架构,那么什么又是服务呢。这就是我这里要解释的一个东东。

关于服务的定义,找了很多地方也没有找到明确的一个定义。
在w3c上对web service倒是有这样的一段描述
1.4 What is a Web service?
For the purpose of this Working Group and this architecture, and without prejudice toward other definitions, we will use the following definition:
[Definition: A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.] 参考http://www.w3.org/TR/ws-arch/#whatis
这里未免把service的描述的太过于狭隘一些了,对于web service倒是比较合适,正如他的title所描述的。

java world有篇文章What is service-oriented architecture?,比较不错的描述了一些SOA,但是对service这个还是没有进行一个定义。

可见这个service还真的不好给他定义,就如同我们在OOA的时候,如果来定义一个对象一样,知道那个意思,就是没有一个准确的定义性的东西来描述一 下,的确,个人感觉OOA也好,SOA也罢,其实是思想上的一个差异,而要把思想上的差异给定义的那么清楚,确实还不是一个容易的事情。

这里我对服务的理解为,服务就是黑盒子,你不需要关心里面的内容,你仅仅需要知道的是,这个盒子可以进去什么东东,东东最后又是怎样的状态。这里已经没有 我们OOA里常见的对象的思想了。文字上理解这些还是非常抽象的,通过对SOA的理解,我把service的特点理解为以下几点

1. 服务是可重用的。

2. 服务是有服务的接口的(服务合同)

3. 服务不公开自己的逻辑

4.  服务是自治的(AUTONOMOUS)

5.  服务是无状态的,至少在服务级别上

6.  服务是松耦合的

7.  服务是可以查找的

8.  服务可以组合

这些服务的特点,各自并不独立,而相互进行关联。其实服务的特点,也就是我们在做SOA的实现和实施过程中的指导思想,也是我们在做SOA的设计过程中的设计基本原则,SOA的中心就是服务,服务的这些特性就是我们要在设计中收要表现出来的。


关于SOA的实施,现在已经很多的企业开始着手了。也可能有大部分企业本身对SOA的理解上并不全面,所以在现实的环境中,只是对SOA的炒作和概念而已。但是SOA势必成为新的信息化的趋势。至少,现在的几大商业软件巨头都在做此间的部署。

***相关主题****************************************

Udi dahan讲SOA

Java实现SOA的标准途径

什么是服务(Service)相关推荐

  1. linux 进程间通信 dbus-glib【实例】详解三 数据类型和dteeth(类型签名type域)(层级结构:服务Service --> Node(对象、object) 等 )(附代码)

    linux 进程间通信 dbus-glib[实例]详解一(附代码)(d-feet工具使用) linux 进程间通信 dbus-glib[实例]详解二(上) 消息和消息总线(附代码) linux 进程间 ...

  2. android打开位置服务,Android - 位置定位(Location)服务(Service)类的基本操作

    位置定位(Location)服务(Service)类的基本操作 本文地址: http://blog.csdn.net/caroline_wendy 定位服务(Location Service),能够确 ...

  3. Windows服务(Service)安装及启动停止方案

    目录 一.创作背景 二.问题解决 2.1 安装Windows service服务 2.2 主方法Main()主方法改写 2.3 安装service服务/卸载service服务 2.4 服务启停 2.5 ...

  4. 开机启动一个服务Service,启动后没有界面后台暗暗运行

    原文来自:http://blog.163.com/shaocpa@126/blog/static/553577572012418103732417/ 如果开机启动一个Activity,开机首先看的界面 ...

  5. 服务Service的基本用法

    作为 Android四大组件之一, 服务也少不了有很多非常重要的知识点,那自然要从最基本的用法开始学习了. 定义一个服务: public class MyService extends Service ...

  6. ubuntu启动、关闭、重启服务service命令

    查看当前所有服务 service --status-all 结果如下: zwl@zwl-NB50TJ1-TK1:~$ service --status-all[ + ] acpid[ - ] alsa ...

  7. android创建标题栏,【Android】利用服务Service创建标题栏通知

    创建标题栏通知的核心代码 public void CreateInform() { //定义一个PendingIntent,当用户点击通知时,跳转到某个Activity(也可以发送广播等) Inten ...

  8. [云原生专题-33]:K8S - 核心概念 - 服务Service管理、服务发现、负载均衡

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/detai ...

  9. ROS基础(二):ros通讯之服务(service)机制

    上一章内容链接: ROS基础(一):ROS通讯之话题(topic)通讯 目录 一.概念 二.实例 1. 小乌龟例程中的service 2. 自定义service 3. 创建服务器节点与客户端节点(c+ ...

  10. java message bus_【Microsoft Azure学习之旅】消息服务Service Bus的学习笔记及Demo示例...

    今年项目组做的是Cloud产品,有幸接触到了云计算的知识,也了解并使用了当今流行的云计算平台Amazon AWS与Microsoft Azure.我们的产品最初只部署在AWS平台上,现在产品决定同时支 ...

最新文章

  1. LDO和DC-DC有什么不同?如何选型?
  2. python让工作自动化_python操作excel让工作自动化
  3. html特殊文字效果,HTML几个特殊的属性标签的使用介绍
  4. 数据结构与算法 / 栈(stack)
  5. 文本相似度几种计算方法及代码python实现
  6. 网站建设——从无到有
  7. 钣金缺口lisp_UG用钣金模块的放样创建天圆地方,还能学钣金展开,必看
  8. spring学习(40):注入数组类型
  9. 配置ISCSI客户端(LINUX)
  10. 西安计算机二级12月,2017年12月计算机二级MS Office习题答案(一)
  11. 快速了解C#接口(Interface)
  12. 简约的网络字节序处理
  13. ocelot 配置文件的动态更新
  14. Python虚拟机之if控制流(一)
  15. [从零开始学习FPGA编程-22]:进阶篇 - 架构 - FPGA内部硬件电路的设计与建模
  16. Gin实现论坛(一)
  17. 考研数据结构——买卖青蛙
  18. 【渝粤题库】陕西师范大学204001英语写作 作业(高起本、专升本)
  19. MacBook通过MacBook安装Windows系统出现“下载windows支持软件时未能储存到所选驱动器”
  20. 微信公众号语音内容提取下载

热门文章

  1. 渲染篇四:千方百计——Event Loop 与异步更新策略
  2. 马斯克成功将特斯拉送上太空,这意味着什么?
  3. linux装图像识别软件,Ubuntu下安装OCR扫描软件gImageReader
  4. 不认命,从10年流水线工人,到谷歌上班的程序媛,一位湖南妹子的励志故事...
  5. 弹性云服务器的规格系列,新睿云简析云服务器的配置规格怎么选择?
  6. 【免费开放源码】审批类小程序项目实战(预约历史页面)
  7. 全面支持ROS,思岚科技发布SLAMWARE ROS SDK !
  8. python程序入口
  9. 我写的破代码将被保存1000年?GitHub启动代码永久存储计划
  10. Android 仿淘宝商品详情页下拉足迹Demo