首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

PJM系统的SOA系统分析跟管理

2012-06-30 
PJM系统的SOA系统分析和管理PJM系统的需求1.服务1.所有SOA都同意,服务自足(独立的,自主的,自给自足的)是个

PJM系统的SOA系统分析和管理
PJM系统的需求1.服务 1.所有SOA都同意,服务自足(独立的,自主的,自给自足的)是个设计目标. 2.幂等性是当你不确认服务是否完成时重做操作的能力. 2.松耦合 紧耦合 松耦合 物理连接 点对点 通过中介者(解析) 通信风格 同步 异步 数据模型 公共复杂类型 只有简单的公共类型 类型系统 强 弱 交互模式 通过复杂的对象树导航 以数据为中心,自足的消息 业务逻辑控制 集中控制 分布式控制(可以多个块) 绑定方式 静态 动态 平台 强平台依赖性 平台无关 事务 2PC(两阶段提交) 补偿 部署 同时进行 非同时进行(暂时不考虑) 版本划分 显式升级 隐式升级 2.松耦合要付出使系统更加复杂的代价. 3.异步通信的一个难点发生在当发送都需要一个答复的时候. 4.服务供应者定义自己提供服务中所使用的数据类型.服务消费者必须接受这些类型.注意,服务消费者应避免在自己的源代码中使用供应者的数据类型.相反,消费者应有一个薄薄的"映射层",将供应者数据类型映射为自己的数据类型. (映射层建立) 5.基础服务数据类型必须稳定. 6.永远都应使用通用接口,而非严格的类型检查. 7.事务补偿的优点是,对系统的更新不必同步进行.缺点烛你必须显式提供和调用服务,回滚之前调用的服务的影响.或者,你必须提供程序用于手动错误处理. 8.数据类型版本划分符合松耦形式时,只是修改是向下兼容的,消费者就不必做任何事情. 五.企业服务总线 1.ESB的主要角色是提供互操作性. 2.间接方式的优点是ESB能够处理SOA景观内的动态变化. 3.如果一个ESB技术只提供了点对点连接,你仍然可以实现松耦合.一个选择是,在实际发送请求之前,消费者可以询问中间人或名字服务器.弄清把请求发送到哪儿,这个也实现了某种类型的间接性. 4.负载平衡和失效备援仍然是大型分布系统的核心需求. 5.协议驱动方法带来分布式通信模式中的第三个层次.在模型的底层,有一个相对稳定的协议,在顶层有一个调用和实现服务的API.在中间有一个层负责将API映射到协议. 6.开发ESB支持日志和监测的能力,无论投入多少工作量都不过分. 六.服务分类 1.分为基本服务,组合服务,流程服务. 2.基本服务应该隐藏技术细节. 3.组合服务由许基本服务组成. 4.流程服务通常有一个状态,该状态在多个调用之间保持稳定. 5.比起短期运行组合服务来,长期运行流程服务往往要求更加健壮,软件质量更好. 七.业务流程管理 1.迭代开发是在合理时间内实现复杂系统的唯一方法 2.BPM工具:ActiveBPEL一个开源业务流程引擎 BPEL 3.对一个大型分布项目而言,如果一个方法使你开始着手搞全面的系统分析,这通常是自求灾难 4.不要基于假设投入大量的工作,太多时候,这些假设都被证明是错的,由于系统会越来越复杂.以致你通常会在软件的整个生命周期内为自己的错误付出代价. 八.SOA和组织 1.SOA是一个业务战略而非IT战略. 九.上下文环境中的SOA 1.让流程引擎不但负责流程服务,还负责给流程服务添加所有有用的搜索标准.使服务可以被搜索. 十.消息交换模式 1.EDA(事件驱动的架构)是一种软件架构模式,它鼓励对事件的生产,发现,消费和响应. 十一.服务生命周期 1.任何时候,如果需要修改生产中的服务的行为,你应该做的引入与服务老版本相互独立的新服务或服务的新版本. 十二.版本划分 1.对任何修改,服务提供者都应该通知现有的服务消费者,并且要与这些消费讨论. 2.以新服务方式引入修改给你一个机会,你可以针对单独一个消费者观察运行时的行为.当确定情况良好时,再把其余所有消费者换到新的服务. 3.如果老版本不能逐步淘汰的话,整个系统的统一性将会越来越糟. 4.作为服务消费者,让你的代码多多少少独立于所调用服务的版本划分是个好主意. 十三.SOA和性能 1.你需要一个中间协议,消费者和供应者能用化来交换数据. 2.如果一个消费者觉得服务的响应时间太长,而你无法能过增加系统硬件和带宽来改善性能的话,通常你必须在消费者端进行解耦. 3.收集不同服务请求运行时统计数据,长期对这些数据进行监控是个好主意. 4.粗粒度下,性能仍然可能成为一个问题. 5.暂时的权宜之计总是有最强生命力的. 十四.SOA和安全 1.消息层安全通常更可取,因为它带来端到端的安全性,而传输层安全带来仅仅是点到点安全性. 2.SOA的基础设施和架构必须互相吻合,只提供基础设施,把安全性问题留给参与者考虑,是非常不好和危险的做法. 3.处理SOA安全性的最好办法是将安全作为服务提供. 十五.技术细节 1.一个无状态的服务是在不同服务调用之间不维持任何状态的服务. 2.一个有状态的服务.指的是在多个服务调用之间可以保持状态服务. 3.性能可能是引入有状态服务非常重要的原因. 4.关联ID是ESB内部在运行时使用技术性数据处理消息的一个例子. 十六.Web Services 1.直到基础设施的细节真正发挥作用之前,不要运用任何特定于Web Services基础设施考量. 十七.服务管理 1.业务库从业务角度来管理服务及其制品. 2.注册中心从技术的角度来管理服务. 十九.建立SOA和SOA监管 1.引入SOA唯一正确的方法是让它自己一步步成长. 二十.后记 1.数据库复制,海量数据处理和本地客户端尤其不是SOA的强项. 工作流的管理项目立项 项目展开 项目需求管理 项目预算管理 人员管理 HR部分进度管理 项目周期管理 项目细节管理沟通管理 配置管理 采购管理 合同管理财务管理采用代码生成器前端后端

热点排行