面向生产环境的系统设计.ppt

上传人:牧羊曲112 文档编号:6066750 上传时间:2023-09-19 格式:PPT 页数:42 大小:647KB
返回 下载 相关 举报
面向生产环境的系统设计.ppt_第1页
第1页 / 共42页
面向生产环境的系统设计.ppt_第2页
第2页 / 共42页
面向生产环境的系统设计.ppt_第3页
第3页 / 共42页
面向生产环境的系统设计.ppt_第4页
第4页 / 共42页
面向生产环境的系统设计.ppt_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《面向生产环境的系统设计.ppt》由会员分享,可在线阅读,更多相关《面向生产环境的系统设计.ppt(42页珍藏版)》请在三一办公上搜索。

1、准备好发射了吗?,面向生产环境的SOA系统设计,08:10,典型SOA应用,展现服务,产品服务,公共服务,基础服务,集成服务,基础服务,公共服务,公共服务,公共服务,外部服务提供者,服务使用者,集成服务,一个SOA应用由一系列服务松散复合而成。,08:10,服务使用者,服务的内部,外部服务,资源,外部服务,每个服务都是自包含、自主运行的功能单元。,08:10,服务是基础架构单元,作为基础业务、应用与技术架构单元,服务具有丰富的含义。,服务使用者,服务提供者,服务,质量约束服务位置功能描述交互模式通信协议消息格式,08:10,SOA技术基础设施,SOA应用需要一系列技术基础设施的支持。,数据,企

2、业服务总线,展现与交互,流程与决策,组件与服务,数据与应用集成,跨企业集成,服务目录,服务监控,公共技术服务,后端应用,渠道,browser,客户端,移动设备,语音,外部企业应用,08:10,一个典型的电子支付应用,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,通过建设基础业务平台,达到快速构建与改进上层的产品与解决方案的目标。,基础业务平台,产品与解决方案,x2,08:10,交付前,你胸有成竹吗,性能容量健壮,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支

3、付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,?,x2,08:10,性能,针对性能的分析与优化,08:10,响应时间分析,如何合理地估算服务的响应时间?,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,200,250,10,350,100,150,300,(10*3+350+100+150+300)+50=980,990,x2,30,08:10,响应时间优化,通过异步调用降低响应时间,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销

4、处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,200,10,350,100,150,(10*3+350+100+150+10)+50=690,700,async,10/300,x2,250,30,08:10,响应时间优化,通过future异步调用降低响应时间,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,200,10,350,(10*3+350+max(100,150)+10)+50=590,600,async,10/300,futu

5、re,future,100,150,x2,250,30,08:10,关于性能的基础设施支持,知晓所有服务的响应时间数据:服务监控 支持各种异步服务使用:服务通信总线,数据,企业服务总线,展现与交互,流程与决策,组件与服务,数据与应用集成,跨企业集成,服务目录,服务监控,公共技术服务,后端应用,渠道,browser,客户端,移动设备,语音,外部企业应用,08:10,小结,在设计阶段就必须估算与优化性能准确估算性能依赖于真实的监控数据,尤其是业务平台的性能监控数据灵活的服务通信设施使提升性能成为可能,08:10,容量,针对容量的分析与优化,08:10,吞吐量分析,如何合理地估算新业务上线对容量的需

6、求?,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,?,?,50,50,150,50,50,50,50,x2,50,50,50,150,08:10,吞吐量分析,平台容量对业务容量的约束,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,50,50,150,50,50,50,50,x2,50,50,50,150,90(3/5),120(4/5),08:10,关键服务的

7、吞吐量优化,充分扩容平衡扩容消除资源单点瓶颈,服务使用者,服务提供者,服务,服务吞吐量伸缩公式伸缩上限单资源吞吐量上限,08:10,非关键服务的吞吐量优化,非关键的业务服务的容量允许短路,提供降级服务。,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,x2,optional,optional,08:10,资源使用分析,估算新业务对关键资源的使用(以SQL执行次数为例),商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网

8、商户,x3,安全核查,基础业务平台,产品与解决方案,5,10,6,10,8,15,10,x2,8,5,15,13,(13+(15*2)+10=53,23,(6*3+53+23+15+10)+10=129,134,08:10,资源使用优化,通用服务代理缓存服务结果。服务提供者支持检查资源更新时间戳。,服务使用者,服务提供者,1.查询(资源Id),服务结果cachekey=服务+操作+资源Idvalue=资源Id+时间戳+服务结果,通用服务代理,2.检查cache(Y),5.返回cache结果,3.是否更新?,4.No,08:10,关于容量的基础设施支持,知晓所有服务的吞吐量与资源使用:服务监控

9、支持optional服务使用:服务通信总线服务结果cache:服务代理,数据,企业服务总线,展现与交互,流程与决策,组件与服务,数据与应用集成,跨企业集成,服务目录,服务监控,公共技术服务,后端应用,渠道,browser,客户端,移动设备,语音,外部企业应用,服务代理,08:10,小结,在设计阶段就必须估算与优化容量充分、平衡对业务平台进行扩容,既有前瞻性又控制成本针对“热点”进行优化准确估算容量依赖于真实的监控数据区别业务的等级,08:10,健壮,在不确定的世界中交付确定的服务,08:10,单个服务的故障条件,服务使用者,外部服务,资源,外部服务,唯一确定的是不确定。,并发请求,重复请求,超

10、量请求,资源不可用,资源响应超时,通信中断,外部服务响应超时,外部服务违背功能契约,BUG,处理超时,服务不可用,请求积压,处理中断,08:10,故障空间组合爆炸,处处都有多种故障可能,可能穷尽其组合吗?,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,x2,重复请求,BUG,外部服务中断,资源不可用,08:10,应对方式,避免发生降低概率控制影响快速恢复,08:10,局部配额控制,一种简单的基于令牌的配额控制方法。令牌服务维持本地各个服务的可用令牌数。,服务接入,令牌服务,服务

11、处理,1.服务请求,2.申请令牌(Y),3.服务处理,4.归还令牌,5.返回结果,服务接入,令牌服务,服务处理,1.服务请求,2.申请令牌(N),3.拒绝请求,08:10,幂等服务,同一个服务操作实例最多只允许执行一次。,资源,一个服务操作实例,两种操作实例标识法:基于业务活动实例Id=业务活动Id+操作序号(2)基于资源实例Id=资源Id+操作类型,动作1,动作2,动作3,一次业务活动执行,08:10,幂等控制,一种简单的基于操作日志的幂等控制方法。操作实例Id上建立唯一性约束。操作日志不仅用于幂等控制,还可用于操作审计等用途。,服务接入,操作日志服务,服务处理,1.服务请求,2.登记日志(

12、OK),3.服务处理,4.返回结果,服务接入,操作日志服务,服务处理,1.服务请求,2.登记日志(违背唯一约束),3.拒绝处理,08:10,基于资源的并发控制(悲观),经典的资源并发控制方式。事务长度限制了系统伸缩能力。不适用热点资源。,资源,服务处理引擎,领域仓储,2.加载并锁定资源root对象,领域对象/服务,3.领域对象操作,4.持久领域对象,1.开始事务,5.提交事务,08:10,基于资源的并发控制(乐观),同样经典的资源并发控制方式。事务长度短,提高系统伸缩性。同样不适用于热点资源。,资源,服务处理引擎,领域仓储,1.加载领域对象,领域对象/服务,2.领域对象操作,4.更新领域对象同

13、时检查并发,3.开始事务,5.提交事务,08:10,基于分布式锁服务的并发控制,没有可加锁的资源,怎么办?以操作实例Id作为锁标识。每个锁都有生命周期(lock_delay)过期锁被自我释放。服务处理时间不应超过lock_delay。,服务接入,分布式锁服务,服务处理,1.服务请求,2.申请互斥锁(带lock_delay),3.服务处理,5.返回结果,4.释放互斥锁,超时,自动释放锁,08:10,请求丢弃,服务请求包含处理期限(=请求发出时间+客户端超时设置)已过期的请求直接丢弃,腾出宝贵服务处理资源。,服务接入,服务处理,1.从队列中取出服务请求,3.丢弃请求,2.请求已过期?(Yes),0

14、8:10,时间控制,延误的处理比不处理更糟糕。一个业务活动是否要继续处理,取决于整体期限。整体期限在统一业务活动上下文中传输。考虑服务器时间差异补偿。,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,x2,00:00.000/1000ms,00:00.800/500ms,00:01.100 00:01.000,08:10,领域自检,不变式 状态变迁,资源,服务处理引擎,领域仓储,2.加载并锁定资源root对象,领域对象/服务,4.领域对象操作,6.持久领域对象,1.开始事务,7.

15、提交事务,3.领域对象自检,5.领域对象自检,08:10,分布事务(TCC模式),Try:尝试执行业务Confirm:确认执行业务Cancel:取消执行业务,业务服务,tryX,confirmX,cancelX,08:10,分布事务(TCC模式),基于TCC模式的分布事务执行过程示例。,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,x2,一次资金记账操作分为两步:try:完成所有账务处理必须的业务检查与资源(资金)预留。confirm:释放资源并真正进行账务处理。confirm

16、操作在整个业务活动结束后由系统自动完成。,08:10,分布事务(补偿模式),do:真正执行业务compensate:业务补偿,业务服务,doX,compensateX,08:10,分布事务(补偿模式),一次补偿模式的业务执行过程。,商户接入,订单处理,支付处理,清算处理,通信前置,资金记账,收费处理,营销处理,客户信息,银行支付清算网,互联网商户,x3,安全核查,基础业务平台,产品与解决方案,x2,如果整个业务活动回滚,而积分已发放,该操作可以被补偿。,08:10,关于健壮的基础设施支持,控制请求量:配合管理服务 幂等控制:操作日志服务 并发控制:分布锁服务 时间控制:上下文服务 事务控制:分布事务服务,数据,企业服务总线,展现与交互,流程与决策,组件与服务,数据与应用集成,跨企业集成,服务目录,服务监控,其它公共技术服务,后端应用,渠道,browser,客户端,移动设备,语音,外部企业应用,服务代理,操作日志,配额管理,分布锁,上下文,分布事务,08:10,小结,生产环境是严酷的设计对故障条件免疫的服务设计可靠、可恢复的业务活动健壮的应用需要大量SOA基础设施的支持,08:10,08:10,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号