一.SOA定义 SOA即面向服务架构(Service-Oriented Architecture).在SOA中,一切皆服务.一个服务是通过消息交换来调用的程序,一个信息系统是共同完成一个特定任务的一组服务,SOA可以概述为一种由一组自治服务创建信息系统的方法.当然具体定义SOA真不好说,反正不能简单理解为我们常用的开发技术如web服务..net remoting或者wcf. SOA设计四项基本原则: 1. 边界必须明确 2. 服务必须自治 3. 服务分享 Schema 和 Contract, 而…
http://www.ibm.com/developerworks/cn/webservices/ws-soa-design/ 引言 面向服务的体系结构(Service-Oriented Architecture,SOA)提供了支持业务灵活性的 IT 灵活性远景.在本文中,我们将重点讨论 IT 灵活性的两个特定方面:流程实现的分离和简化.如何说明和实现各个服务对 IT 灵活性的这些方面有很大的影响,因此也对业务灵活性有很大的影响.我们此处的目标是提供支持 SOA 远景的服务说明和实现指南.本文的…
老徐FrankXuLei 受邀为花旗银行上海研发中心讲授<微软WCF服务分布式开发与SOA架构设计课程> 受邀为花旗银行上海研发中心讲授<微软WCF服务分布式开发与SOA架构设计课程>研发中心2000多工程师,隶属于花旗集团.非常愉快也交流具体开发问题.偶遇前同事Ross@微软中国 @微软中国MSDN @微软中国TechNet @微软中国MVP项目组 @51CTO技术社区 @新青年IT学习网 微软WCF Web服务 Web API学习群 339444457 微软ASP.NET MV…
大 量互联网公司都在拥抱SOA和服务化,但业界对SOA的很多讨论都比较偏向高大上.本文试图从稍微不同的角度,以相对接地气的方式来讨论SOA, 集中讨论SOA在微观实践层面中的缘起.本质和具体操作方式,另外也用相当篇幅介绍了当今互联网行业中各种流行的远程调用技术等等,比较适合从事实际工作 的架构师和程序员来阅读. 为了方便阅读,本话题将分为两篇展现.本文是上篇,着眼于微观SOA的定义,并简单分析其核心原则. 亚马逊CEO杰夫•贝佐斯:鲜为人知的SOA大师 由于SOA有相当的难度和门槛,不妨先从一个…
SOA简介 SOA(Service-Oriented Architecture,面向服务架构)是一种将信息系统模块化为服务的架构风格.拥有了服务之后,我们就可以迅速地将这些服务按不同方式重新组合,从而实现新的或更好的业务流程. SOA跟传统的单体应用相比,其新颖之处在于我们可以更灵活的为服务提供者与消费者选择实现技术和部署位置.只要服务接口保持稳定,抽象出来的接口就能让提供者和消费者独立演变.这种稳定性向服务消费者隔离了服务实现的变化,缩小了每次因提供者改变而必须进行变更的工作范围,而这种工作范…
阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DDD+GRASP进行分析和设计(防止主观的判断导致错误的假设) 5.SOA分布式下的数据一致性 5.1.分布式事务(基于DTC的分布式事务) 5.2.事务补偿(提供正向或反向的操作来让数据在业务上是一致的) 5.3.异步EDA(基于异步事件流来实现柔性的分布式事务) 6.总结 1.背景介绍 最近一段时…
阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DDD+GRASP进行分析和设计(防止主观的判断导致错误的假设) 5.SOA分布式下的数据一致性 5.1.分布式事务(基于DTC的分布式事务) 5.2.事务补偿(提供正向或反向的操作来让数据在业务上是一致的) 5.3.异步EDA(基于异步事件流来实现柔性的分布式事务) 6.总结 1.背景介绍 最近一段时…
阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DDD+GRASP进行分析和设计(防止主观的判断导致错误的假设) 5.SOA分布式下的数据一致性 5.1.分布式事务(基于DTC的分布式事务) 5.2.事务补偿(提供正向或反向的操作来让数据在业务上是一致的) 5.3.异步EDA(基于异步事件流来实现柔性的分布式事务) 6.总结 1.背景介绍 最近一段时…
  1.背景介绍       最近一段时间都在做系统分析和设计工作,面对的业务是典型的重量级企业应用方向.突然发现很多以往觉得很简单的问题变得没有想象的那么容易,最大的问题就 是职责如何分配.论系统架构设计的最大的问题,其实也就是职责的分配,分配的合理,实现起来就会很柔性,反之就会使架构很混乱.       软件的生命周期大概可以归纳为四个基本的过程,分析.设计.实现.测试,当然这仅仅是一个最为粗略的表示而已.不同的方法论有着不同的使用这几个过程的方 式.RUP使用快速迭代的过程,在这个几个子过…
<高可用服务设计之二:Rate limiting 限流与降级> <nginx限制请求之一:(ngx_http_limit_conn_module)模块> <nginx限制请求之二:(ngx_http_limit_req_module)模块> <nginx限制请求之三:Nginx+Lua+Redis 对请求进行限制> <nginx限制请求之四:目录进行IP限制> <分布式限流之一:redis+lua 实现分布式令牌桶,高并发限流> 服务…