CN109697113B - 请求重试的方法、装置、设备及可读存储介质 - Google Patents

请求重试的方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN109697113B
CN109697113B CN201811640170.0A CN201811640170A CN109697113B CN 109697113 B CN109697113 B CN 109697113B CN 201811640170 A CN201811640170 A CN 201811640170A CN 109697113 B CN109697113 B CN 109697113B
Authority
CN
China
Prior art keywords
retry
request
response
time offset
cross
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811640170.0A
Other languages
English (en)
Other versions
CN109697113A (zh
Inventor
杨子国
周健兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Cubesili Information Technology Co Ltd
Original Assignee
Guangzhou Cubesili Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Cubesili Information Technology Co Ltd filed Critical Guangzhou Cubesili Information Technology Co Ltd
Priority to CN201811640170.0A priority Critical patent/CN109697113B/zh
Publication of CN109697113A publication Critical patent/CN109697113A/zh
Application granted granted Critical
Publication of CN109697113B publication Critical patent/CN109697113B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种请求重试的方法、装置、设备及可读存储介质,属于应用开发领域。该方法包括:发送跨进程请求;若未收到请求对应的响应,获取当前请求重试的时间偏移量;根据当前请求重试的时间偏移量进行请求重试;其中,当前请求重试的时间偏移量为两次请求的时间间隔,时间间隔根据业务场景动态确定。本申请在发送跨进程请求后,如果未收到请求对应的响应,获取当前请求重试的时间偏移量,进行请求重试,由于该时间偏移量根据业务场景动态确定,因而避免了在固定时间内批量请求重试,提高了请求重试的灵活性和成功率;且避免了因服务故障导致被调用端的负载增大。

Description

请求重试的方法、装置、设备及可读存储介质
技术领域
本申请涉及应用开发领域,特别涉及一种请求重试的方法、装置、设备及可读存储介质。
背景技术
在分布式服务开发过程中,当客户端的第一服务A跨进程调用第二服务B时,会出现请求失败的情况,因此,如何设计一种请求重试的方法成了应用开发领域人们十分关注的问题。
相关技术中,当客户端的第一服务A跨进程调用第二服务B时,客户端在发送请求时携带一个唯一的序列号,在请求失败后对请求进行重试时,根据该唯一的序列号在固定时间内以相同的时间间隔和固定的重试次数对请求进行重试,直到客户端的第一服务A成功收到响应或达到重试次数的上限。
相关技术至少存在以下问题:
该请求重试的方法在固定时间内以相同的时间间隔和固定的重试次数对请求进行重试,请求重试的灵活性差,成功率低,且可能导致被调用端的负载增大,进而导致服务质量恶性循环。
申请内容
本申请实施例提供了一种请求重试的方法、装置、设备及可读存储介质,以解决相关技术请求重试的灵活性差,成功率低,且可能导致被调用端的负载增大的问题。所述技术方案如下:
一方面,提供了一种请求重试的方法,所述方法包括:
发送跨进程请求;
若未收到所述请求对应的响应,获取当前请求重试的时间偏移量;
根据所述当前请求重试的时间偏移量进行请求重试;
其中,所述当前请求重试的时间偏移量为两次请求的时间间隔,所述时间间隔根据业务场景动态确定。
可选地,所述根据所述当前请求重试的时间偏移量进行请求重试之后,还包括:
若接收到所述请求重试对应的响应,结束请求重试。
可选地,所述结束请求重试之后,还包括:
将所述请求重试的响应进行存储,存储的所述请求重试的响应作为后续相同请求的响应。
可选地,所述方法,还包括:获取重试次数阈值;
若重试次数达到重试次数阈值,结束请求重试。
可选地,所述方法,还包括:根据业务场景,动态调整所述重试次数阈值。
可选地,所述发送跨进程请求之后,还包括:
接收所述跨进程请求对应的响应;
将所述跨进程请求对应的响应进行存储,存储的所述请求重试的响应作为后续相同请求的响应。
一方面,提供了一种请求重试的装置,所述装置包括:
发送模块,用于发送跨进程请求;
第一获取模块,用于若未收到所述请求对应的响应,获取当前请求重试的时间偏移量;
重试模块,用于根据所述当前请求重试的时间偏移量进行请求重试;
其中,所述当前请求重试的时间偏移量为两次请求的时间间隔,所述时间间隔根据业务场景动态确定。
可选地,所述重试模块,还用于若接收到所述请求重试对应的响应,结束请求重试。
可选地,所述装置还包括:
第一存储模块,用于将所述请求重试的响应进行存储,存储的所述请求重试的响应作为后续相同请求的响应。
可选地,所述装置还包括:
第二获取模块,用于获取重试次数阈值;
所述重试模块,还用于若重试次数达到重试次数阈值,结束请求重试。
可选地,所述装置还包括:
调整模块,用于根据业务场景,动态调整所述重试次数阈值。
可选地,所述装置还包括:
第二存储模块,用于接收所述跨进程请求对应的响应;将所述跨进程请求对应的响应进行存储,存储的所述请求重试的响应作为后续相同请求的响应。
一方面,提供了一种请求重试的设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器显示并执行以实现如上所述的请求重试的方法。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器显示并执行以实现如上所述的请求重试的方法。
本申请提供的技术方案带来的有益效果至少包括:
在发送跨进程请求后,如果未收到请求对应的响应,通过获取当前请求重试的时间偏移量,进行请求重试,由于该时间偏移量根据业务场景动态确定,因而避免了请求在固定时间内批量重试,提高了请求重试的灵活性和成功率;且避免了因服务故障导致被调用端的负载增大。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的实施环境示意图;
图2是本申请实施例提供的请求重试的方法流程图;
图3是本申请实施例提供的请求重试的方法流程图;
图4是本申请实施例提供的游戏显示界面示意图;
图5是本申请实施例提供的请求重试的装置结构示意图;
图6是本申请实施例提供的请求重试的装置结构示意图;
图7是本申请实施例提供的请求重试的装置结构示意图;
图8是本申请实施例提供的请求重试的装置结构示意图;
图9是本申请实施例提供的请求重试的装置结构示意图;
图10是本申请实施例提供的终端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供了一种请求重试的方法,该方法可应用于如图1所示的实施环境中。图1中,包括至少一个终端11和服务器12,终端11可与服务器12进行通信连接,以从服务器12上获取请求重试的时间偏移量。
其中,终端11可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如PC(Personal Computer,个人计算机)、手机、智能手机、PDA(Personal Digital Assistant,个人数字助手)、可穿戴设备、掌上电脑PPC(Pocket PC)、平板电脑、智能车机、智能电视、智能音箱等。
服务器12可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。
本领域技术人员应能理解上述终端11和服务器12仅为举例,其他现有的或今后可能出现的终端或服务器如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
基于上述图1所示的实施环境,参见图2,本申请实施例提供了一种请求重试的方法,该方法可应用于图1所示的终端中。如图2所示,该方法包括:
步骤201,发送跨进程请求。
在分布式服务开发中,当客户端接收请求后,可跨进程发送请求,并且等待请求对应的响应。其中,跨进程用于不同应用程序之间进行数据交换。
以同一客户端中从第一服务向第二服务跨进程发送请求为例,当第一服务向第二服务跨进程发送请求时,即第一服务跨进程调用第二服务时,如果调用是非幂等的,即多次重复操作和一次操作的影响不一样时,需要保证调用的服务一致。
可选地,发送跨进程请求之后,如果接收到跨进程请求对应的响应,则将跨进程请求对应的响应进行存储,将该存储的跨进程请求对应的响应作为后续相同请求的响应。
也就是说,在客户端发送跨进程请求之后,当客户端接收到跨进程请求对应的响应时,该请求任务结束,并将跨进程请求对应的响应存储在客户端的内存中。以便当客户端在后续接收到相同的请求时,直接将客户端内存中的响应作为其对应的响应进行反馈。
其中,考虑到内存的存储空间有限,本申请实施例提供的方法可以对内存中存储的响应按存储时间长短进行排序或者按响应的使用频率进行排序,每隔一定周期,将排序靠后的参考数量的响应进行删除,以释放内存的存储空间。删除响应的周期可以根据经验设置,或者根据业务场景设置,本申请实施例对此不加以限定。设置删除响应的周期后,本申请实施例提供的方法还支持对该删除周期进行调整。一旦调整,则后续按照调整后的周期来定期删除内存中存储的响应。
例如,内存中存储3个响应,分别为响应A、响应B及响应C,响应A的存储时长为20小时,响应B的存储时长为12小时,响应C的存储时长为1小时,以删除响应的周期为24小时为例,每隔24小时将排序靠后的一个响应删除掉,由于响应A的存储时间最长,排序靠后,因而达到周期后,将响应A进行删除。
除此之外,可选地,还可以在达到删除响应的周期后,将内存中存储时间达到一定长度或者使用频率小于使用频率阈值的响应进行删除。
仍以内存中存储3个响应,分别为响应A、响应B及响应C,且删除响应的周期为24小时为例,若响应A的使用频率为20次,响应B的使用频率为2次,响应C的使用频率为0次,使用频率阈值为2,则达到24小时的删除响应的周期后,由于响应C的使用频率未达到使用频率阈值,因而将响应C删除。
步骤202,若未收到请求对应的响应,获取当前请求重试的时间偏移量。
当客户端没有收到请求对应的响应时,从客户端的内存中获取当前请求重试的时间偏移量。其中,当前请求重试的时间偏移量为两次请求的时间间隔,时间间隔根据业务场景动态确定。
需要说明的是,当客户端没有收到请求对应的响应时,说明调用服务失败。其中,调用失败有如下三种情况:
情况一
第一服务调用第二服务时,由于网络原因请求没有送达到第二服务,请求失败,即调用失败。
情况二
第一服务调用第二服务时,请求送达至第二服务,但第二服务在进行业务处理时发生进程内异常,导致请求失败,即调用失败。
情况三
第一服务调用第二服务时,请求送达至第二服务,且第二服务进程内业务处理正常,并成功发送了响应,由于网络问题,导致响应没有送达至第一服务;或者第一服务由于等待响应超时而断开连接,没有接收响应;导致调用失败。
无论调用失败属于上述哪种情况,当客户端没有收到请求对应的响应后,从客户端的内存中获取当前请求重试的时间偏移量。其中,当前请求重试的时间偏移量为两次请求的时间间隔,即距离上次发送请求的时间间隔,上次发送的请求可以是第一次发送的请求,也可以是上次请求重试时发送的请求。例如,若当前请求重试是第一次请求重试,则该时间间隔是距离第一次发送请求的时间间隔,如果当前请求重试是第二次请求重试,则该时间间隔是距离第一次请求重试的时间间隔。
例如,从客户端的内存中获取当前请求重试的时间偏移量为5s,若上次发送请求的时间为10:10:08,则当前请求重试的时间为10:10:13。
进一步地,根据业务场景,也可以将下一个请求重试的时间偏移量动态调整为10s,或者根据当前的业务场景,将下一个请求重试的时间偏移量动态调整为20s。需要说明的是,对于下一个请求重试的动态调整,可以根据业务场景进行调整,或者根据经验值进行调整,本申请实施例对此不加以限定。
其中业务场景包括但不限于目前客户端的运行流畅度或者所处的网络状态,例如,当客户端没有收到请求对应的响应,从内存中获取当前请求重试的时间偏移量时,根据目前客户端的运行流畅度即负载大小动态调整时间偏移量的大小,当前客户端的运行状态不流畅,可以将当前时间偏移量动态调大;当前客户端的运行状态较流畅,可以将当前时间偏移量动态调小。其中。对于当前客户端的运行状态的流畅程度的判定,可以根据请求的发送或接收响应的反应时间进行判定,或者根据经验值进行判定,本申请实施例对此不加以限定。
此外,还可以根据目前的网络状态动态调整时间偏移量的大小,例如将网络状态从好到差依次分为五个等级,分别是一级、二级、三级、四级和五级;当目前网络状态为二级时,可以将当前时间偏移量动态调整为10s;当目前网络状态为四级时,可以将当前时间偏移量动态调整为20s。其中,本申请实施例不对网络状态的确定方式加以限定,例如,可以根据网络信号的强弱来确定。此外,对于网络状态与当前时间偏移量之间的对应关系,也可以根据经验值进行设定,本申请实施例对此不加以限定。
步骤203,根据当前请求重试的时间偏移量进行请求重试。
当客户端从内存中获取到当前请求重试的时间偏移量时,根据该请求重试的时间偏移量进行请求重试。例如,从客户端的内存中获取当前请求重试的时间偏移量为5s,若上次发送请求的时间为10:10:08,则确定当前请求重试的时间为10:10:13。当时间达到10:10:13时,重新发送请求。
可选地,在进行请求重试时,可根据业务场景依次获取多次请求重试的时间偏移量,后续按照每次请求重试的时间偏移量确定当前请求重试的时间,达到当前请求重试的时间后,重新发送请求。若在请求重试过程中,接收到请求重试对应的响应,结束请求重试。例如,获取到多次请求重试的时间偏移量,根据当前请求重试的时间偏移量进行请求重试后,当客户端接收到请求重试对应的响应时,结束后续的请求重试。
可选地,接收到请求重试对应的响应后,本申请实施例提供的方法支持将请求重试的响应进行存储,存储的请求重试的响应作为后续相同请求的响应。
例如,在客户端进行请求重试之后,若客户端接收到请求重试对应的响应时,该请求重试任务结束,并将请求重试对应的响应存储在客户端的内存中,当客户端在后续接收到相同的请求时,直接将客户端内存中的响应作为其对应的响应进行反馈。
其中,由于内存存储空间有限,即使是请求重试得到的响应,也可以同内存中存储的响应一样进行定期删除,删除方式可参见上述步骤201的相关内容,此处不再一一赘述。
在一种可选的实施方式中,基于相同构思,参见图3,本申请实施例提供的方法中,当客户端在进行请求重试时,还包括如下步骤:
步骤204,获取重试次数阈值;若重试次数达到重试次数阈值,结束请求重试。
当客户端从内存中获取到当前请求重试的时间偏移量后,还从内存中获取到重试次数阈值,在进行请求重试时,若重试次数达到重试次数阈值时,不论客户端是否接收到请求重试对应的响应,结束此次请求重试任务。
其中,重试次数阈值可以为6或者10,也可以根据实际情况或者经验值进行设定,本申请实施例对此不加以限定。
可选地,根据业务场景,动态调整重试次数阈值。
其中,根据业务场景对重试次数阈值进行动态调整的方式与上述步骤202中根据业务场景对时间偏移量的动态调整的方式一样,在此不再赘述。
在一种可选的实施方式中,参见图4,以游戏中的奖品发放为例。当用户每天分享游戏时,会获得一张游戏参赛券,点击领取该参赛券时需要发送跨进程请求,在客户端没有收到与跨进程请求对应的响应时,为了保证参赛券正常发放到用户的账户中,因此,在发送跨进程请求失败后获取请求重试的时间偏移量。
当用户分享游戏后,由于用户的分享操作,当第一服务跨进程向第二服务发送请求时,第二服务接收请求并对该请求做出响应,将该响应反馈回第一服务,用户根据第一服务的反馈,领取到参赛券。然而,当用户分享游戏之后在领取参赛券的时候,未收到任何反馈时,启动请求重试策略。
例如,用户领取参赛券失败发生在00:00,客户端会依次获取请求重试的时间偏移量5,10,30,60,120,240,300,600,1200,3600,7200;则请求重试会在00:00:05,00:00:15,00:00:45,00:01:45,00:03:45,00:07:45,00:12:45,00:22:45,00:42:45,01:42:45,03:42:45依次进行。当用户领取参赛券成功后,会停止对请求的重试;或者当请求重试的次数达到重试次数阈值时,即在最后一次重试时间03:42:45之后,停止请求重试任务。
本申请实施例提供的技术方案带来的有益效果至少包括:
在发送跨进程请求后,如果未收到请求对应的响应,通过获取当前请求重试的时间偏移量,进行请求重试,由于该时间偏移量根据业务场景动态确定,因而避免了请求在固定时间内批量重试,提高了请求重试的灵活性和成功率;且避免了因服务故障导致被调用端的负载增大。
通过将跨进程请求对应的响应以及请求重试对应的响应进行存储,以便于将存储的响应作为后续相同请求的响应,进而可提高响应速度。
通过获取重试次数阈值,在重试次数达到重试次数阈值后结束请求重试任务,且通过对重试次数阈值的动态调整,及时结束请求重试,均避免了客户端进行无用的请求重试。
本申请实施例提供了一种请求重试的装置,参见图5,该装置包括:
发送模块501,用于发送跨进程请求;
第一获取模块502,用于若未收到请求对应的响应,获取当前请求重试的时间偏移量;
重试模块503,用于根据当前请求重试的时间偏移量进行请求重试;
其中,跨进程用于不同应用程序之间进行数据交换;当前请求重试的时间偏移量为两次请求的时间间隔,时间间隔根据业务场景动态确定。
在一种可选的实施方式中,重试模块503,用于若接收到请求重试对应的响应,结束请求重试。
在一种可选的实施方式中,参见图6,该装置还包括:
第一存储模块504,用于将请求重试的响应进行存储,存储的请求重试的响应作为后续相同请求的响应。
在一种可选的实施方式中,参见图7,该装置还包括:
第二获取模块505,用于获取重试次数阈值;
重试模块503,还用于若重试次数达到重试次数阈值,结束请求重试。
在一种可选的实施方式中,参见图8,该装置还包括:
调整模块506,用于根据业务场景,动态调整重试次数阈值。
在一种可选的实施方式中,参见图9,该装置还包括:
第二存储模块507,用于接收跨进程请求对应的响应;将跨进程请求对应的响应进行存储,存储的请求重试的响应作为后续相同请求的响应。
本申请实施例提供的技术方案带来的有益效果至少包括:
在发送跨进程请求后,如果未收到请求对应的响应,通过获取当前请求重试的时间偏移量,进行请求重试,由于该时间偏移量根据业务场景动态确定,因而避免了请求在固定时间内批量重试,提高了请求重试的灵活性和成功率;且避免了因服务故障导致被调用端的负载增大。
通过将跨进程请求对应的响应以及请求重试对应的响应进行存储,以便于将存储的响应作为后续相同请求的响应,进而可提高响应速度。
通过获取重试次数阈值,在重试次数达到重试次数阈值后结束请求重试任务,且通过对重试次数阈值的动态调整,及时结束请求重试,均避免了客户端进行无用的请求重试。
需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
参见图10,其示出了本申请实施例提供的一种请求重试的终端1000的结构示意图。该终端1000可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(MovingPicture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1000还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1000包括有:处理器1001和存储器1002。
处理器1001可以包括一个或多个处理核心,比如4个核心处理器、5个核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1001所执行以实现本申请中方法实施例提供的请求重试的方法。
在一些实施例中,终端1000还可选包括有:***设备接口1003和至少一个***设备。处理器1001、存储器1002和***设备接口1003之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口1003相连。具体地,***设备包括:射频电路1004、触摸显示屏1005、摄像头1006、音频电路1007、定位组件1008和电源1009中的至少一种。
***设备接口1003可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器1001和存储器1002。在一些实施例中,处理器1001、存储器1002和***设备接口1003被集成在同一芯片或电路板上;在一些其他实施例中,处理器1001、存储器1002和***设备接口1003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1004包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1004可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1004还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1005是触摸显示屏时,显示屏1005还具有采集在显示屏1005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1001进行处理。此时,显示屏1005还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1005可以为一个,设置终端1000的前面板;在另一些实施例中,显示屏1005可以为至少两个,分别设置在终端1000的不同表面或呈折叠设计;在再一些实施例中,显示屏1005可以是柔性显示屏,设置在终端1000的弯曲表面上或折叠面上。甚至,显示屏1005还可以设置成非矩形的不规则图形,也即异形屏。显示屏1005可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1006用于采集图像或视频。可选地,摄像头组件1006包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1006还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1001进行处理,或者输入至射频电路1004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1001或射频电路1004的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1007还可以包括耳机插孔。
定位组件1008用于定位终端1000的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1008可以是基于美国的GPS(GlobalPositioning System,全球定位***)、中国的北斗***、俄罗斯的格雷纳斯***或欧盟的伽利略***的定位组件。
电源1009用于为终端1000中的各个组件进行供电。电源1009可以是交流电、直流电、一次性电池或可充电电池。当电源1009包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1000还包括有一个或多个传感器1010。该一个或多个传感器1010包括但不限于:加速度传感器1011、陀螺仪传感器1012、压力传感器1013、指纹传感器1014、光学传感器1015以及接近传感器1016。
加速度传感器1010可以检测以终端1000建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1011可以用于检测重力加速度在三个坐标轴上的分量。处理器1001可以根据加速度传感器1011采集的重力加速度信号,控制触摸显示屏1005以横向视图或纵向视图进行用户界面的显示。加速度传感器1011还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1012可以检测终端1000的机体方向及转动角度,陀螺仪传感器1012可以与加速度传感器1011协同采集用户对终端1000的3D动作。处理器1001根据陀螺仪传感器1012采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1013可以设置在终端1000的侧边框和/或触摸显示屏1005的下层。当压力传感器1013设置在终端1000的侧边框时,可以检测用户对终端1000的握持信号,由处理器1001根据压力传感器1013采集的握持信号进行左右手识别或快捷操作。当压力传感器1013设置在触摸显示屏1005的下层时,由处理器1001根据用户对触摸显示屏1005的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1014用于采集用户的指纹,由处理器1001根据指纹传感器1014采集到的指纹识别用户的身份,或者,由指纹传感器1014根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1001授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1014可以被设置终端1000的正面、背面或侧面。当终端1000上设置有物理按键或厂商Logo时,指纹传感器1014可以与物理按键或厂商Logo集成在一起。
光学传感器1015用于采集环境光强度。在一个实施例中,处理器1001可以根据光学传感器1015采集的环境光强度,控制触摸显示屏1005的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1005的显示亮度;当环境光强度较低时,调低触摸显示屏1005的显示亮度。在另一个实施例中,处理器1001还可以根据光学传感器1015采集的环境光强度,动态调整摄像头组件1006的拍摄参数。
接近传感器1016,也称距离传感器,通常设置在终端1000的前面板。接近传感器1016用于采集用户与终端1000的正面之间的距离。在一个实施例中,当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变小时,由处理器1001控制触摸显示屏1005从亮屏状态切换为息屏状态;当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变大时,由处理器1001控制触摸显示屏1005从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图10中示出的结构并不构成对终端1000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机设备,计算机设备包括处理器和存储器,存储器中存储有至少一条指令。至少一条指令经配置以由一个或者一个以上处理器执行,以实现上述请求重试的方法。
在示例性实施例中,还提供了一种计算机可读存储介质,存储介质中存储有至少一条指令,至少一条指令在被计算机设备的处理器执行时实现上述请求重试的方法。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
以上所述仅为本申请的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (8)

1.一种请求重试的方法,其特征在于,所述方法包括:
发送跨进程请求,所述跨进程用于不同应用程序之间进行数据交换;
若接收到所述跨进程请求对应的响应,将所述跨进程请求对应的响应进行存储,存储的所述跨进程请求对应的响应作为后续相同请求的响应;
若未收到所述请求对应的响应,获取当前请求重试的时间偏移量;
获取重试次数阈值;
若重试次数未达到所述重试次数阈值,根据所述当前请求重试的时间偏移量进行请求重试;
若重试次数达到所述重试次数阈值,结束请求重试;
其中,所述当前请求重试的时间偏移量为两次请求的时间间隔,所述时间间隔和所述重试次数阈值根据业务场景动态确定,所述业务场景包括运行流畅度或者所处的网络状态。
2.根据权利要求1所述的方法,其特征在于,所述根据所述当前请求重试的时间偏移量进行请求重试之后,还包括:
若接收到所述请求重试对应的响应,结束请求重试。
3.根据权利要求2所述的方法,其特征在于,所述结束请求重试之后,还包括:
将所述请求重试的响应进行存储,存储的所述请求重试的响应作为后续相同请求的响应。
4.一种请求重试的装置,其特征在于,所述装置包括:
发送模块,用于发送跨进程请求,所述跨进程用于不同应用程序之间进行数据交换;
第二存储模块,用于接收所述跨进程请求对应的响应;将所述跨进程请求对应的响应进行存储,存储的所述请求重试的响应作为后续相同请求的响应;
第一获取模块,用于若未收到所述请求对应的响应,获取当前请求重试的时间偏移量;
第二获取模块,用于获取重试次数阈值;
重试模块,用于若重试次数未达到所述重试次数阈值,根据所述当前请求重试的时间偏移量进行请求重试;还用于若重试次数达到所述重试次数阈值,结束请求重试;
其中,所述当前请求重试的时间偏移量为两次请求的时间间隔,所述时间间隔和所述重试次数阈值根据业务场景动态确定,所述业务场景包括运行流畅度或者所处的网络状态;
调整模块,用于根据所述业务场景,动态调整所述重试次数阈值。
5.根据权利要求4所述的装置,其特征在于,所述重试模块,还用于若接收到所述请求重试对应的响应,结束请求重试。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第一存储模块,用于将所述请求重试的响应进行存储,存储的所述请求重试的响应作为后续相同请求的响应。
7.一种请求重试的设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器显示并执行以实现如权利要求1-3中任一所述的请求重试的方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器显示并执行以实现如权利要求1-3中任一所述的请求重试的方法。
CN201811640170.0A 2018-12-29 2018-12-29 请求重试的方法、装置、设备及可读存储介质 Active CN109697113B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811640170.0A CN109697113B (zh) 2018-12-29 2018-12-29 请求重试的方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811640170.0A CN109697113B (zh) 2018-12-29 2018-12-29 请求重试的方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN109697113A CN109697113A (zh) 2019-04-30
CN109697113B true CN109697113B (zh) 2021-06-01

Family

ID=66233019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811640170.0A Active CN109697113B (zh) 2018-12-29 2018-12-29 请求重试的方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN109697113B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111241112B (zh) * 2019-12-27 2023-05-23 山大地纬软件股份有限公司 一种保证幂等的微服务调用监管***及方法
CN112134958B (zh) * 2020-09-23 2022-04-15 北京奇艺世纪科技有限公司 数据请求方法、装置、服务器及存储介质
CN113923163A (zh) * 2021-10-20 2022-01-11 广东亿迅科技有限公司 一种基于长连接消息通道限流方法及***
CN114827280B (zh) * 2022-04-26 2024-04-26 中国建设银行股份有限公司 请求处理方法、装置、设备、介质
CN116932290B (zh) * 2023-09-18 2023-12-08 北京睿企信息科技有限公司 一种获取目标模型的数据处理***

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459496B (zh) * 2008-12-18 2011-05-04 北京大学 一种消息的超时时间间隔的调整方法及装置
CN102769577A (zh) * 2012-08-21 2012-11-07 迈普通信技术股份有限公司 一种实现报文重传的方法和网络设备
CN103067895A (zh) * 2013-01-04 2013-04-24 东莞宇龙通信科技有限公司 长短信的重发方法及通信终端
CN103095428A (zh) * 2011-11-02 2013-05-08 上海贝尔股份有限公司 一种用于传输rlc pdu的方法和装置
CN107040343A (zh) * 2016-02-03 2017-08-11 ***通信集团公司 一种重传调度方法及装置
CN108234599A (zh) * 2017-12-06 2018-06-29 链家网(北京)科技有限公司 一种消息重发方法及***
CN108712494A (zh) * 2018-05-18 2018-10-26 阿里巴巴集团控股有限公司 处理异步消息的方法、装置及设备
CN109245867A (zh) * 2018-08-14 2019-01-18 深圳壹账通智能科技有限公司 一种消息发送方法、计算机可读存储介质及终端设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001091357A1 (fr) * 2000-05-22 2001-11-29 Mitsubishi Denki Kabushiki Kaisha Systeme de transmission de donnees
WO2018198363A1 (ja) * 2017-04-28 2018-11-01 富士通株式会社 基地局装置、端末装置、無線通信システム、および通信方法
CN108965164B (zh) * 2017-05-17 2021-12-07 北京京东尚科信息技术有限公司 基于消息队列的业务请求重传方法、装置及可读存储介质
CN108492109B (zh) * 2018-03-15 2021-09-21 平安科技(深圳)有限公司 电子装置、动态码请求的处理方法及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459496B (zh) * 2008-12-18 2011-05-04 北京大学 一种消息的超时时间间隔的调整方法及装置
CN103095428A (zh) * 2011-11-02 2013-05-08 上海贝尔股份有限公司 一种用于传输rlc pdu的方法和装置
CN102769577A (zh) * 2012-08-21 2012-11-07 迈普通信技术股份有限公司 一种实现报文重传的方法和网络设备
CN103067895A (zh) * 2013-01-04 2013-04-24 东莞宇龙通信科技有限公司 长短信的重发方法及通信终端
CN107040343A (zh) * 2016-02-03 2017-08-11 ***通信集团公司 一种重传调度方法及装置
CN108234599A (zh) * 2017-12-06 2018-06-29 链家网(北京)科技有限公司 一种消息重发方法及***
CN108712494A (zh) * 2018-05-18 2018-10-26 阿里巴巴集团控股有限公司 处理异步消息的方法、装置及设备
CN109245867A (zh) * 2018-08-14 2019-01-18 深圳壹账通智能科技有限公司 一种消息发送方法、计算机可读存储介质及终端设备

Also Published As

Publication number Publication date
CN109697113A (zh) 2019-04-30

Similar Documents

Publication Publication Date Title
CN109697113B (zh) 请求重试的方法、装置、设备及可读存储介质
CN111225042B (zh) 数据传输的方法、装置、计算机设备以及存储介质
CN110278464B (zh) 显示榜单的方法和装置
CN110674022A (zh) 行为数据获取方法、装置及存储介质
CN110740340B (zh) 视频直播方法及装置、存储介质
CN107896337B (zh) 信息推广方法、装置及存储介质
CN110147503B (zh) 信息发布方法、装置、计算机设备和存储介质
CN110659127A (zh) 一种处理任务的方法、装置及***
CN111083516A (zh) 直播处理的方法和装置
CN111290896A (zh) 服务器压力的测试方法、装置、设备及介质
CN110839174A (zh) 图像处理的方法、装置、计算机设备以及存储介质
CN110673944A (zh) 执行任务的方法和装置
CN111106902B (zh) 数据报文传输方法、装置、设备及计算机可读存储介质
CN108401194B (zh) 时间戳确定方法、装置和计算机可读存储介质
CN110912830A (zh) 传输数据的方法和装置
CN110971840B (zh) 视频贴图方法及装置、计算机设备及存储介质
CN110086814B (zh) 一种数据获取的方法、装置及存储介质
CN109688064B (zh) 数据传输方法、装置、电子设备和存储介质
CN114143280B (zh) 会话显示方法、装置、电子设备及存储介质
CN113536063B (zh) 信息处理方法、装置、设备及存储介质
CN111464829B (zh) 切换媒体数据的方法、装置、设备及存储介质
CN114785766A (zh) 智能设备的控制方法、终端及服务器
CN112260845B (zh) 进行数据传输加速的方法和装置
CN111064782B (zh) 传输数据的方法、装置、电子设备及存储介质
CN111414563B (zh) 网页交互的方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20210111

Address after: 511442 3108, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Applicant after: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 511446 28th floor, block B1, Wanda Plaza, Wanbo business district, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Applicant before: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20190430

Assignee: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

Assignor: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Contract record no.: X2021440000052

Denomination of invention: Method, device, device and readable storage medium for requesting retrial

License type: Common License

Record date: 20210222

EE01 Entry into force of recordation of patent licensing contract
GR01 Patent grant
GR01 Patent grant