某大型银行深化系统之六:核心层之二

业务视角理解异步处理在支付环节的应用 异步处理在支付环节的应用一、什么是同步处理、异步处理二、异步处理在支付环节的应用三、支付系统为什么要使用“异步通知”四、异步处理方式在支付环节可能产生的问题 一、什么是同步处理、异步处理 同步:指消息请求方发出请求后,必须要等待消息接收方返回结果,才能执行下一个任务。 异步:指“消息请求方”发出请求后,“消息接收方”并不立即准备处理,而告知消息受理结果。“消息请求方”不需要等待“消息接收方”返回处理结果,随时可以触发下一个请求,去执行其他程序。 二、异步处理在支付环节的应用 第三方支付机构在处理电商平台 阅读详情

传送门 ☞ 轮子的专栏 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229

2异步流程控制机制

        把当前工作项的提交动作和下一个工作项的生成动作分开,成为两个原子操作;当用户提交一个工作项时,只返回当前该工作项数据提交成功与否的结果,而不继续实时计算生成下一个工作项,下一个工作项的生成由后台引擎异步处理,这样避免了两个操作的串行,以获得更高的吞吐量、效率。
        当用户提交给流程引擎一个工作项时,将不需要经过流程引擎计算经历长时间的等待,而是立即返回给用户提交成功与否的结果;流程引擎将通过后台的引擎来处理提交,从而产生新的工作项。异步流程引擎方式是典型的流水线、工厂化模式,他通过释放系统等待资源,获取了高吞吐量、高效率。
        流程引擎支持异步处理。异步处理中,当用户提交给一个工作项时,立即返回给用户提交的成功与否结果而不是引擎的处理结果,也就是说提交后并不马上交给引擎处理,而是放入一个待解析队列中,由引擎自动检查该队列,一旦发现有待解析流程后,取出该流程解析。异步申请的好处是,在服务器压力较大时,异步处理的用户体验较好。在用户提交后马上离开该页面,以避免在等待引擎解析时,页面长时间无反应,这样对用户来说,他可以马上进行其他操作,在数秒之后,即可以追寻表单,查看流程行进状况;其次,异步机制提供了用来提出负载平衡请求的简单方式、提供了容错能力、支持断续连接的系统等,其中的每个优点都是通过异步模式对应用程序中不同部分进行去耦处理的结果。要让某个处理具有异步特点,就必须建立某种形式的队列来保存挂起的请求,该处理中的每一个步骤都只能与这些中间队列进行通信,而不能直接与其上一步或下一步进行通信。

2.1响应时间更快


        在同步系统中,用户在整个操作结束之后才得到响应。在异步系统中,提交节点之后,客户的延迟时间仅仅是将该工作项传递给处理中的下一步所花费的时间。在某种程度上,这样的更快响应时间只是一种假象,因为客户收到响应时该处理并未真正完成,但客户不需要再等待了,这是重要的优点。

2.2负载均衡

        异步处理所要求的基础体系结构能够在不增加额外软件的情况下轻松地提供灵活的负载平衡能力。在异步系统中,需要某种形式的中间存储或队列来存储步骤之间的请求。当一份工作项完成了某步骤中的处理工作时,它就被放到队列中等待进行下一步处理。当下一个步骤准备好处理另一份工作项时,它就从这种挂起请求列表中抓取一份工作项。要完成这样的系统中负载平衡的实施,只需要增加计算机的数量,由它们处理挂起列表中对步骤B的请求。


        采用中间队列之后,在负载平衡和可伸缩性方面都获得了很大的灵活性。在该系统的前端或后端都可以放置任意数量的计算机,而且这种灵活性适应于任何一个处理步骤。可以在每一个步骤中使用适当数量的硬件对系统的性能进行微调,也可以在一台计算机上将多个步骤结合在一起进行处理。

2.3容错能力

        对灵活的负载平衡提供支持的功能同时也就是对容错能力提供支持的功能。如果某个软件或硬件故障删除了某个处理步骤,请求执行该步骤的那些挂起请求就在队列中等候直至该服务被恢复。这对处理中先前的步骤并不产生什么实际的影响,尽管总体处理时间可能由于故障而延长。如果遵循了上一节关于负载平衡所讨论的技术,很可能仅仅减缓某一步骤的处理,但并不会停止。同样的功能也 可以通过使用群集方式来提供;群集可以在不进行任何负载平衡工作的情况下提供故障转移能力。


        在负载平衡的系统中,处理同一步骤的其他服务器可以继续从队列中截获请求;如果各服务器都已经以接近峰值的状态运行,整个系统的性能将下降。

2.4通知或轮训状态

        在同步系统中,调用处理要等待调用返回之后才继续向下执行,即将完成工作项提交给流程引擎时,同时引擎将计算下一个节点,产生新的工作项,并插入数据库生成的新工作项ID。如果对流程引擎进行同步调用,可以立即返回处理结果,也可以表明该工作项是否已经成功地添加到数据库中。但在异步系统中,虽然发出了提交完成工作项的请求,但是实际的计算和插入动作却未同时发生,此时无法返回实际的计算结果,系统也不知道流程是否成功。在这种情况下,将在对请求的提交进行处理时同步生成 ID,由此获得 ID 并在随后以异步方式将该请求传递给处理的其余部分,这个ID可以使由引擎产生也可以根据UUID由客户端产生,只要保证提交时拥有唯一的ID即可。调用者可以使用某种形式的轮询机制使自己负责查询状态。

2.5超时处理

        异步处理方式让您不必等待每一步都完成;但仍需要考虑整个处理需要多长时间才能结束的问题。为了保证工作项或者正在处理的任何形式的请求最终不会等待过长时间才能处理完毕,需要一种方法来指定每个异步请求允许花费的最长时间。实施超时机制是防止订单在系统中耽搁好几天的唯一办法。 

2.6补偿逻辑

        补偿逻辑与数据库中的事务回滚概念相关,它在处理彻底失败时撤销任何已经完成的操作。在同步系统中已经提供了一些技术来处理此问题,例如数据库事务处理及分布式事务处理中间件。根据这些事务处理技术的任一种,程序员可以明确地声明某处理的所有步骤都是某项事务的一部分;如果出现错误,数据库或事务中间件提供的服务将撤销错误出现前已完成的所有工作。但在异步系统中,不可能采用这些事务处理技术来管理处理中的所有步骤,因为这些步骤被不确定的时间所分割。因此异步流程控制需要单独的处理机制才能撤销处理失败时已经完成的任何工作,即采取开发补偿逻辑来完成。 

某大型银行深化系统之四:系统架构 传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229         某大型银行深化系统的整体逻辑架构是依据平台的建设目标进行设计的,按照主流技术标准采用分层的技术架构,在Java EE、SOA等标准规范体系下,将最基本的以及共性的信息处理、流程调度、优先级、权限、路由等相关的功能作为平台运维的核心层,以“工厂化” 阅读详情

相关推荐

经典:流程银行与新一代核心业务系统架构详解

流程银行与新一代核心业务系统架构 赵刚博士 赛迪顾问股份有限公司副总裁 2009年4月28日

关于异步处理,请分清真正需要异步处理的逻辑

我们的税地系统其中一次需求迭代的开发内容:每次调用银行接口查询订单支付状态时,如果对方返回404-订单不存在,并且如果订单是在5min前创建的,那么,就触发重新下发,要求每笔订单只可重发一次。 展示代码前,下面用类时序图来直观介绍一下这3个类以及实现脉络。 下面贴程序实现代码(含伪代码)。 /** * 银行查单服务类 */ @Service public class BankOrder...

gzyes 654

国内某银行异步架构设计参考

一个国内银行的异步架构设计参考文档,可作为其它银行的异步架构设计参考使用.

某大型银行深化系统技术方案之八:核心层之异步流程控制机制

传送门☞Android兵器谱☞转载请注明☞http://blog.youkuaiyun.com/leverage_1229 核心层 核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性和处理效率,并对外部服务...

xuela-net 338

新手必看:如何用Python模拟电动助力转向系统(EPS)的传感器信号处理

本文详细介绍了如何使用Python模拟电动助力转向系统(EPS)的传感器信号处理流程,包括转向力矩、转向角度和车速信号的生成与滤波处理。通过实战代码示例,帮助开发者理解ECU如何计算助力扭矩,并提供了可视化分析和性能优化建议,适合汽车电子系统开发新手学习。

weixin_28327051的博客 354

网络安全实战:从Wireshark到BurpSuite的抓包技巧解析

本文深入解析了Wireshark和BurpSuite在网络安全抓包中的实战技巧,从基础对比到高级过滤、核心模块应用及安全测试避坑指南。通过详细的操作步骤和案例分析,帮助读者掌握数据包抓取与分析的核心技能,提升网络安全防护能力。

weixin_29207533的博客 573

某大型银行深化系统之五:核心层之一

传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229 核心层         核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性

leverli的专栏 2117

FPGA图像处理之直方图均衡实现

直方图均衡的基本原理,就是对在图像中像素个数多的灰度值(即对画面起主要作用的灰度值)进行拉伸,而对像素个数较少的灰度值(即对画面不起主要作用的灰度值)进行合并,从而提高对比度,使图像清晰,达到增强的目的。综合以上两个条件,累积分布函数是个好的选择,因为累积分布函数是单调增函数(控制大小关系),并且值域是0到1(控制越界问题),所以直方图均衡化中使用的是累积分布函数。

FZWzsl的博客 1428

某大型银行深化系统之七:核心层之三

传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229 核心层         核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性

leverli的专栏 2057

STM32H745xI双核芯片SMPS/LDO配置误区:从复位失败到精准排查的实战复盘

本文详细分析了STM32H745xI双核芯片在SMPS/LDO配置中的常见误区,特别是复位失败问题的排查过程。通过对比参考板与故障板的波形数据,揭示了电感选型不当导致的电源稳定性问题,并提供了硬件设计检查清单和调试技巧,帮助开发者避免类似陷阱。

weixin_42531588的博客 265

【Pico手势开发实战】基于SteamVR串流与MRTK3的跨平台交互方案

本文详细介绍了在Pico设备上,结合SteamVR串流与微软MRTK3框架,实现高效跨平台手势交互开发的完整方案。该方案通过在PC端运行Unity项目并串流至头显,利用MRTK3封装的手势识别与交互组件,大幅提升了开发调试效率与性能上限,并确保了未来向其他OpenXR设备的良好兼容性。

weixin_29001683的博客 216

某大型银行深化系统之十四:技术架构

传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229         在上述功能架构中,除了核心层外,应用层及服务层都包括了用户UI界面,因此服务中包括了Mashup所需的WebAPI,需要采用MVC的WebApp框架来实现。整套系统的技术架构如下图所示,根据总体架构的设计思想,自定而下包括了客户端、服务层、核心层、系统软

leverli的专栏 3542

CentOS7无网环境实战:MySQL8.0完整离线安装与避坑指南(附依赖包下载)

本文详细介绍了在CentOS7无网环境下MySQL8.0的完整离线安装流程,包括依赖包获取、系统预处理、MySQL二进制安装、服务配置与优化等关键步骤。特别针对离线安装的特殊需求,提供了从依赖包下载到服务调优的全链路解决方案,帮助用户在企业内网或隔离环境中高效部署MySQL数据库。

bush的博客 175

某大型银行深化系统之九:服务层之一

传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229 服务层         服务层主要体现了SOA体系下的组件复用和业务复用机制。服务的边界定义决定于粒度和耦合度。         粒度表示的是一个服务的大小,它可以理解为服务操作的范围,粗粒度的服务,操作的内容广而且杂;细粒度的服务,操作的内容细而且简单。粗粒度的服

leverli的专栏 2387

[自动化工具] 解放双手的利器:「自动邮件平台」工具助你高效搞定重复通知任务

摘要:自动邮件平台是一款零门槛自动化工具,帮助用户高效处理重复性邮件任务。该平台支持两种调度模式(指定日期和间隔天数),无需编码即可快速设置账单提醒、活动通知等任务。提供免费托管版(小时级调度)和自主部署版(分钟级调度),满足不同精度需求。典型应用场景包括客户跟进、系统监控等周期性任务。用户只需三步即可完成设置,还能扩展定制化功能。该工具让非技术人员也能轻松实现邮件自动化,释放时间专注更重要的工作。

每日出拳老爷子的博客 108

Transformer实战(40)——Transformer时间序列数据建模

Transformer 因其在自然语言处理 (Natural Language Processing, NLP) 任务中的优异表现而被广泛应用,其主要优势在于能够有效建模时间序列数据。这些数据可以是文本,也可以是非文本。本节将介绍如何使用 Transformer 进行时间序列数据建模和预测,将学习时间序列的基本概念,并在此基础上使用一个简单的模型,用以初步了解时间序列数据,并为各种预测任务奠定基础。

盼小辉丶的博客 2356

某大型银行深化系统之八:核心层之四

传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229 核心层         核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性

leverli的专栏 2082

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

某大型银行深化系统之十三:业务应用层

传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229         面向完整的业务应用处理。对于不同类型的业务应用,定制其特有的处理流程和不同基础服务的组合,对基础服务进行封装,对特有应用功能在继承基础服务的前提下进行定制开发。         如图所示,体现了应用层与服务层的调用关系,新业务首先通过初始化优先

leverli的专栏 2298

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

某大型银行深化系统技术方案之九:核心层之流程数据管理

传送门☞Android兵器谱☞转载请注明☞http://blog.youkuaiyun.com/leverage_1229 核心层 核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性和处理效率,并对外部服务...

xuela-net 167

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

某大型银行深化系统技术方案之十一:核心层之业务活动监控

传送门☞Android兵器谱☞转载请注明☞http://blog.youkuaiyun.com/leverage_1229 核心层 核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性和处理效率,并对外部服务...

xuela-net 189

[置顶] 某大型银行深化系统技术方案之七:核心层之流程控制引擎

传送门☞Android兵器谱☞转载请注明☞http://blog.youkuaiyun.com/leverage_1229 核心层 核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性...

weixin_30662849的博客 118

[置顶] 某大型银行深化系统技术方案之十一:核心层之业务活动监控

传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229 核心层         核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性和...

weixin_33938733的博客 116
上一篇: 某大型银行深化系统之五:核心层之一
下一篇: 某大型银行深化系统之七:核心层之三
innovation
博客等级 码龄14年 251粉丝 136原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值