一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种第三方服务高延迟下的优化方法及系统与流程

2023-03-27 10:04:44 来源:中国专利 TAG:


1.本发明涉及计算机通讯技术领域,特别是一种第三方服务高延迟下的优化方法及系统。


背景技术:

2.在支付系统中,用户在下单过程中除了系统自身的耗时以外,还需要请求第三方支付服务来获取支付的凭证,用户凭借支付宝、微信等支付的凭证在客户端上唤起支付,所以下单速度还与第三方支付服务的速度有关,如果系统服务器和第三方服务器存在较大的延时,则会导致用户下单支付的时间变长,产生的结果就是用户点击下单按钮之后在页面上长时间等待支付的凭证的返回,等待的时间越长用户体验就越差,因此系统服务器需要优化下单的速度,还需要考虑在延迟波动无法避免的情况下,如何优化用户体验。


技术实现要素:

3.为克服上述问题,本发明的目的是提供一种第三方服务高延迟下的优化方法及系统,能够根据第三方服务的延迟波动来决定用户的支付流程,提高了用户体验。
4.本发明采用以下方案实现:一种第三方服务高延迟下的优化方法,所述方法包括如下步骤:
5.步骤s1、在服务器上定时检查第三方服务器网络延时状况,并根据第三方服务延迟情况设定弱、中、强3个等级状态;
6.步骤s2、如果延迟等级状态为强,用户在下单页面发起下单请求时同步请求第三方服务,把返回结果直接返回给用户;
7.步骤s3、如果延迟等级状态为中或弱则在用户发起下单请求时把请求存入消息队列mq,客户端直接返回下单成功;
8.步骤s4、开启一个消费任务消费mq的请求消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则用双线程请求第三方服务,并把第三方服务的返回结果存入订单数据库;
9.步骤s5、用户从下单页转移到订单列表中查看请求结果,用户查看请求结果后发起支付行为。
10.进一步的,所述步骤s1进一步具体为:在服务器上定时ping第三方服务器,通过返回的网络延时检查第三方服务器网络延时状况,根据第三方服务延迟情况设定弱、中、强3个等级的状态,网络延时小于预设值a时延迟等级状态为强,网络延时大于预设值b时延迟等级状态为弱,所述预设值b大于预设值a,网络延时大于预设值a且小于预设值b时延迟等级状态为中。
11.进一步的,所述步骤s2进一步具体为:如果延迟等级状态为强,表示第三方服务延迟很低,则用户在下单页发起下单请求时直接同步请求第三方服务获取唤起支付的凭证,把第三方服务的返回结果直接返回给客户端,客户端根据凭证直接唤起支付让用户付款。
12.进一步的,所述步骤s4进一步具体为:开启一个消费任务消费消息队列mq的消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则采取双线程并行请求第三方服务,并以先返回的数据为准,丢弃更慢的返回数据,再把第三方服务的返回结果存入订单数据库。
13.本发明还提供了一种第三方服务高延迟下的优化系统,所述系统包括延时状态检测模块,同步请求模块,异步处理模块,消息消费模块,支付模块;
14.所述延时状态检测模块用于在服务器上定时检查第三方服务器网络延时状况,并根据第三方服务延迟情况设定弱、中、强3个等级的状态;
15.所述同步请求模块用于如果延迟等级状态为强,用户在下单页面发起下单请求时同步请求第三方服务,把返回结果直接返回给用户;
16.所述异步处理模块用于如果延迟等级状态为中或弱则在用户发起下单请求时把请求存入消息队列mq,客户端直接返回下单成功;
17.所述消息消费模块用于开启一个消费任务消费mq的请求消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则用双线程请求第三方服务,并把第三方服务的返回结果存入订单数据库;
18.所述支付模块用于用户从下单页转移到订单列表中查看请求结果,用户查看请求结果后发起支付行为。
19.进一步的,所述延时状态检测模块进一步具体为:在服务器上定时ping第三方服务器,通过返回的网络延时检查第三方服务器网络延时状况,根据第三方服务延迟情况设定弱、中、强3个等级的状态,网络延时小于预设值a时延迟等级状态为强,网络延时大于预设值b时延迟等级状态为弱,所述预设值b大于预设值a,网络延时大于预设值a且小于预设值b时延迟等级状态为中。
20.进一步的,所述同步请求模块进一步具体为:如果延迟等级状态为强,表示第三方服务延迟很低,则用户在下单页发起下单请求时直接同步请求第三方服务获取唤起支付的凭证,把第三方服务的返回结果直接返回给客户端,客户端根据凭证直接唤起支付让用户付款。
21.进一步的,所述延时状态检测模块进一步具体为:开启一个消费任务消费消息队列mq的消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则采取双线程并行请求第三方服务,并以先返回的数据为准,丢弃更慢的返回数据,再把第三方服务的返回结果存入订单数据库。
22.本发明的有益效果在于:本发明提供了一种第三方服务高延迟下的优化方法及系统,能够根据第三方服务的延迟波动情况来决定用户的支付流程,在延迟等级状态为强的情况下同步请求第三方服务,用户得到最佳用户体验;在延迟等级为弱或中的情况下,为避免用户在订单详情页长时间等待产生不良的用户体验,采取异步请求并转移至订单列表查看订单的请求情况,以此来解耦下单和支付2个步骤,提高了用户体验。
附图说明
23.图1为本发明方法流程示意图;
24.图2是本发明系统的结构框图。
具体实施方式
25.下面结合附图对本发明做进一步说明:
26.如图1所示:本发明的一种第三方服务高延迟下的优化方法,所述方法包括如下步骤:步骤s1、在服务器上定时检查第三方服务器网络延时状况,并根据第三方服务延迟情况设定弱、中、强3个等级状态;
27.步骤s2、如果延迟等级状态为强,用户在下单页面发起下单请求时同步请求第三方服务,把返回结果直接返回给用户;
28.步骤s3、如果延迟等级状态为中或弱则在用户发起下单请求时把请求存入消息队列mq,客户端直接返回下单成功;
29.步骤s4、开启一个消费任务消费mq的请求消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则用双线程请求第三方服务,并把第三方服务的返回结果存入订单数据库;
30.步骤s5、用户从下单页转移到订单列表中查看请求结果,用户查看请求结果后发起支付行为。
31.下面结合一具体实施例对本发明作进一步说明:
32.一种第三方服务高延迟下的优化方法,该方法为:步骤s1、在服务器上定时ping第三方服务器,通过返回的网络延时检查第三方服务器网络延时状况,根据第三方服务延迟情况设定弱、中、强3个等级的状态,网络延时小于预设值a时延迟等级状态为强,网络延时大于预设值b时延迟等级状态为弱,所述预设值b大于预设值a,网络延时大于预设值a且小于预设值b时延迟等级状态为中;
33.在服务器上每分钟定时ping第三方服务器地址,根据ping命令的延迟返回结果设定第三方服务延迟等级状态,预设值a为200毫秒,预设值b为800毫秒,网络延时小于等于200毫秒延迟等级状态为强,网络延时大于200毫秒小于800毫秒延迟等级状态为中,网络延时大于等于800毫秒延迟等级状态为弱。
34.步骤s2、如果延迟等级状态为强,用户在下单页面发起下单请求时同步请求第三方服务,把返回结果直接返回给用户;
35.如果延迟等级状态为强,表示第三方服务延迟很低,请求效率高,则用户在下单页发起下单请求时直接同步请求第三方服务获取唤起支付的凭证,并且第三方服务的返回结果会直接返回给客户端,客户端根据凭证直接唤起支付让用户付款。
36.步骤s3、如果延迟等级状态为中或弱则在用户发起下单请求时把请求参数存入消息队列mq,客户端直接返回成功;
37.如果延迟等级状态为中或者弱,则表示第三方服务存在一定延迟,则系统使用同步请求第三方服务会因为高延迟使用户产生一定时间的等待,用户使用体验受到影响,为了缓解用户在订单页的等待时间,用户发起下单请求时把请求参数存入消息队列mq,客户端返回成功,提示用户“下单成功,前往我的订单列表进行付款”。
38.步骤s4、开启一个消费任务消费mq的请求消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则采取双线程并行请求第三方服务,并以先返回的数据为准,丢弃更慢的返回数据,再把第三方服务的返回结果存入订单数据库;
39.开启一个消费任务,实时消费消息队列mq的消息,得到用户提交的支付参数,如果
延迟等级状态为中则向第三方服务发起下单请求;如果延迟等级状态为弱则表示第三方服务延迟严重,采取双线程并行请求第三方服务,以先返回的数据为准,丢弃更慢的返回数据,把第三方服务返回的支付的凭证存入订单数据库。
40.步骤s5、用户从下单页转移到订单列表中查看请求结果,查到结果后发起支付行为;
41.用户在下单页下单时,用户根据步骤s3的返回结果“下单成功,前往订单列表进行付款”,前往订单列表页面查看已提交但未支付的订单,进入订单详情后,系统查询订单数据库读取步骤s4存储在订单数据库中的支付的凭证,客户端根据支付的凭证唤起支付。
42.请参阅图2所示,一种第三方服务高延迟下的优化系统,所述系统包括延时状态检测模块,同步请求模块,异步处理模块,消息消费模块,支付模块;
43.所述延时状态检测模块用于在服务器上定时检查第三方服务器网络延时状况,并根据第三方服务延迟情况设定弱、中、强3个等级的状态;
44.所述延时状态检测模块进一步具体为:在服务器上定时ping第三方服务器,通过返回的网络延时检查第三方服务器网络延时状况,根据第三方服务延迟情况设定弱、中、强3个等级的状态,网络延时小于预设值a时延迟等级状态为强,网络延时大于预设值b时延迟等级状态为弱,所述预设值b大于预设值a,网络延时大于预设值a且小于预设值b时延迟等级状态为中。
45.在服务器上每分钟定时ping第三方服务器地址,根据ping命令的延迟返回结果设定第三方服务延迟等级状态,预设值a为200毫秒,预设值b为800毫秒,网络延时小于等于200毫秒延迟等级状态为强,网络延时大于200毫秒小于800毫秒延迟等级状态为中,网络延时大于等于800毫秒延迟等级状态为弱。
46.所述同步请求模块用于如果延迟等级状态为强,用户在下单页面发起下单请求时同步请求第三方服务,把返回结果直接返回给用户;
47.所述同步请求模块进一步具体为:如果延迟等级状态为强,表示第三方服务延迟很低,则用户在下单页发起下单请求时直接同步请求第三方服务获取唤起支付的凭证,把第三方服务的返回结果直接返回给客户端,客户端根据凭证直接唤起支付让用户付款。
48.所述异步处理模块用于如果延迟等级状态为中或弱则在用户发起下单请求时把请求存入消息队列mq,客户端直接返回下单成功;
49.所述消息消费模块用于开启一个消费任务消费mq的请求消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则用双线程请求第三方服务,并把第三方服务的返回结果存入订单数据库;
50.所述消息消费模块进一步具体为:开启一个消费任务消费消息队列mq的消息,如果延迟等级状态为中则向直接第三方服务发起下单请求;如果延迟等级状态为弱则采取双线程并行请求第三方服务,并以先返回的数据为准,丢弃更慢的返回数据,再把第三方服务的返回结果存入订单数据库。
51.所述支付模块用于用户从下单页转移到我的订单列表中查看请求结果,用户查看请求结果后发起支付行为。
52.总之,本发明提供了一种第三方服务高延迟下的优化方法及系统,能够根据第三方服务的延迟波动情况来决定用户的支付流程,在延迟等级状态为强的情况下同步请求第
三方服务,用户得到最佳用户体验;在延迟等级为弱或中的情况下,为避免用户在订单详情页长时间等待产生不良的用户体验,采取异步请求并转移至订单列表查看订单的请求情况,以此来解耦下单和支付2个步骤,提高了用户体验。
53.以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献