具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
考虑到现有的数据处理方法,负责数据处理的服务器常常会由于当前需要处理的数据量较大,或者自身处理能力有限等原因,导致无法及时地完成客户端所请求进行的数据处理,无法在规定时间内反馈用户对应的结果数据造成数据处理超时。且在这种数据处理超时的情况下,基于现有方法,用户无法通过客户端及时获取了解当前具体的数据处理情况,也无法根据具体情况对数据处理过程进行相应的调整或控制,而只能无能为力地一直等待服务器反馈的结果数据,因此存在交互体验差的问题。
针对产生上述问题的根本原因,本说明书考虑在生成数据处理请求后,且在发送数据处理请求进行数据处理之前,先生指示该数据处理请求的身份信息,进而可以通过身份信息来指示具体的数据处理请求,以及数据处理请求所对应的数据处理。在进行数据处理过程时,客户端可以检测是否在第一预设时间内接收到数据处理请求的结果数据,以自动、高效地识别出该数据处理请求所对应的数据处理是否出现超时。在发现的数据处理出现超时的时候,客户端可以进一步发送携带有与该超时数据处理对应的身份信息的标记请求,以便服务器可以根据标记请求通过标记身份信息所指示的数据处理请求标记所对应的超时数据处理。并记录下超时数据处理处理过程中的相关的中间数据,例如当前进度数据、当前得到中间结果数据以及处理状态数据等等。而客户端一侧则可以按照预设的时间间隔定时向服务器发送查询请求,服务器则可以根据每一次的查询请求,获取该目标请求最新的中间数据反馈给客户端,再由客户端展示给用户,以便用户可以及时地了解、掌握该数据处理具体处理情况,同时也为用户提供了对该数据处理进行调整的参考依据,从而可以避免在超时的情况下用户长时间的空白等待,解决了现有方法中存在的数据处理超时的情况下客户端无法及时获取超时的数据处理的处理情况、交互体验差的技术问题,达到能及时、高效地向客户端反馈超时的数据处理的中间数据,改善了数据处理过程中的交互体验的技术效果。
本说明书实施例提供了一种数据处理方法,所述数据处理方法具体可以应用于包含服务器和客户端的***架构中。可以参阅图1所示,其中,上述服务器负责进行用户通过客户端所要求进行的数据处理,并反馈相应的结果数据,上述服务器和客户端具体可以通过有线或无线的方式耦合,以便进行数据的交互。
具体的,上述客户端可以用于获取数据处理请求,并生成所述数据处理请求的身份信息;向服务器发送携带有对应的身份信息的数据处理请求。相应的,上述服务器用于接收并响应所述数据处理请求,进行相应的数据处理,以得到对应的结果数据。
在具体进行数据处理时,上述客户端还可以用于检测是否在第一预设时间内接收数据处理请求的结果数据;在确定第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求;其中,所述标记请求携带有所述数据处理请求的身份信息。相应的,上述服务器还可以用于根据所述标记请求将所述身份信息所对应的数据处理请求标记为目标请求,并记录与所述目标请求所对应的数据处理相关的中间数据。
进一步,上述客户端还可以用户每间隔第二预设时间,定时向所述服务器发送第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息。相应的,上述服务器还可以用于根据所述第一查询请求获取并返回目标请求的中间数据。这样客户端可以及时地向用户展示出目标请求的中间数据,以便用户可以知晓具体的数据处理情况。
在本实施例中,所述服务器可以是一种应用于数据处理后台一侧的,能够实现数据传输、数据处理等功能的服务器。具体的,所述服务器可以为一个具有数据运算、存储功能以及网络交互功能的电子设备;也可以为运行于该电子设备中,为数据处理、存储和网络交互提供支持的软件程序。在本实施方式中,并不具体限定所述服务器的数量。所述服务器具体可以为一个服务器,也可以为几个服务器,或者,由若干服务器形成的服务器集群。
在本实施例中,所述客户端可以是一种应用于用户一侧,能够实现数据采集、数据传输等功能的前端设备。具体地,所述客户端例如可以为台式电脑、平板电脑、笔记本电脑、智能手机、数字助理、智能可穿戴设备、导购终端、具有网络访问功能的电视机等。或者,所述客户端也可以为能够运行于上述电子设备中的软件应用。例如,可以是在手机上运行的某APP等。
需要说明的是,上述所列举的可以应用本说明书实施例所提供的数据处理方法的包含有具体客户端和服务器的***只是一种示意性说明。具体实施时,根据具体应用场景,还可以将上述数据处理方法应用于包含有页面前端(可以理解为另一种类型的客户端)以及后台***(可以理解为另一种类型的服务器)的业务处理架构中。对此,本说明书不作限定。
在一个场景示例中,可以参阅图2所示,应用本说明书实施例提供的数据处理方法进行具体的数据处理。
在本场景示例中,用户是某网站的技术人员,该技术人员想要调用该网站后台处理***的服务器对A订单数据进行修改处理。具体实施时,该技术人员可以使用自己的台式电脑作为客户端,进行针对A订单数据的修改操作。例如,可以通过点击客户端所展示的订单修改图标,并在弹出的修改框内填入要求要修改的具体参数等。客户端可以接收并响应技术人员的上述操作生成用于指示对A订单数据进行修改的数据处理请求。
在客户端生成上述数据处理请求的同时,还可以根据预设的生成规则,为该数据处理请求生成唯一的身份信息(例如身份ID)来指示该数据处理请求。例如,可以根据上述数据处理请求,以及用户具体的操作信息,按照预设的生成规则进行相应运算,得到一个运算值:ihu2019111fj作为该数据处理请求的身份ID。再将携带有身份ID的数据处理请求发送给该网站的后台服务器。
服务器在接收到上述携带有身份信息的数据处理请求后,可以响应上述数据处理请求,调用相应的运算资源,例如处理线程等,开始进行上述数据处理请求所对应的数据处理,即上述针对A订单数据的修改处理,在根据用户要求完成A订单数据的修改处理后,反馈修改后的A订单数据作为结果数据。
需要说明的是,服务器在进行上述数据处理的同时,还会将上述数据处理请求、数据处理请求所对应的数据处理分别与上述数据处理请求所携带的身份信息建立对应关系。这样可以利用身份信号作为索引,指示出对应的数据处理请求,以及数据处理。
客户端在向服务器发送上述数据处理请求后,会启动用于检测是否超时的第一任务(也可以称为超时检查任务)。基于该任务,客户端在发送数据处理请求的同时,会记录下发送该数据处理请求的发送时间(例如记录下发送时间:10:05:03),并以该发送时间作为起始时间,开始计算是否在第一预设时间内(例如自起始时间起10秒内)接收到服务器反馈的该数据处理请求的结果数据。
如果客户端检测出在第一预设时间内接收到对应的结果数据,则可以判断该数据处理请求所对应的数据处理没有出现超时。例如,客户端在10:05:11时接收到服务器反馈的修改后的A订单数据时。如果客户度检测出在第一预设时间内没有接收对应的结果数据,则可以判断该数据处理请求所对应的数据处理出现了超时。例如,客户端在10:05:13时还没有接收到修改后的A订单数据。
在本场景示例中,客户端没有在第一预设时间内接收到修改后的订单数据,判断该数据处理已经出现了超时。这时由于服务器并没有完成该数据处理还无法提供给用户对应的结果数据,而用户由于没有在规定的第一预设时间内接收到结果数据,因此比较着急,想要了解该数据处理具体的处理情况。
基于上述需求,客户端会启动用于查询的第二任务(也可以称为定时查询任务)。具体的,客户端可以先确定出在第一预设时间内没有接收到结果数据的数据处理请求(即超时的数据处理所对应的数据处理请求)的身份信息,并根据上述身份信息生成对应的标记请求,其中,标记请求携带有上述身份信息。向服务器发送上述标记请求。
服务器在接收到上述标记请求后,可以通过数据解析得到上述用于指示超时的数据处理所对应的数据处理请求的身份信息,进而可以根据该身份信息作为索引从正在进行的多个数据处理所对应的数据处理请求中找到所对应的数据处理请求,并将该数据处理请求标记,作为目标请求。例如,服务器可以根据身份IDihu2019111fj从正在处理的多个数据处理所对应的数据处理请求中找到对A订单数据进行修改处理的数据处理请求,并在该数据处理请求上设置预设的标记标签作为目标请求。通过该预设的标记标签可以锁定目标请求,以及目标请求所对应的数据处理,从而可以对目标请求所对应的数据处理过程进行监控。
进一步,服务器还可以先针对该目标请求建立对应的数据记录表。其中,上述数据记录表可以记录有该目标请求的身份信息。在进行目标请求所对应的数据处理的同时会在该数据记录表中记录下数据处理过程中的与数据处理相关的中间数据,例如,数据处理过程中产生的中间结果数据、数据处理的进度数据、数据处理过程的状态数据等等。
而在客户端一侧,基于第二任务,客户端每间隔第二预设时间(例如每隔5秒),就会根据目标请求的身份信息生成用于查询获取目标请求的中间数据的第一查询请求,并向服务器发送第一查询请求。其中,上述第一查询请求可以携带有待查询的目标请求的身份信息。
服务器在接收到第一查询请求后,可以根据第一查询请求所携带的身份信息,找到该目标请求的数据记录表,并通过查询数据记录表获取从开始记录起到当前时间这段时间内所记录的中间数据作为目标请求的中间数据,并将上述目标请求的中间数据反馈给客户端。当然,具体实施时,服务器也可以获取上一次查询到当前时间这段时间内所记录的中间数据作为目标请求的中间数据等。对此,本说明书不作限定。
例如,服务器通过查询IDihu2019111fj所对应的数据记录列表,得到从10:05:13(即开始记录的时间)到10:05:18(即当前时间)之间的这段时间内所记录的处理状态数据(例如:10:05:15修改了第i行数据、10:05:16修改了第j列数据等)、处理进度数据(例如:完成修改23%等)、处理环境数据(调用了2号线程、2号线程当前处于拥堵状态等)、中间结果数据(例如已完成修改的第i行数据和第j列数据等)等,并将上述中间数据作为目标请求的中间数据发送给客户端。
客户端在接收到上述中间数据后,可以向用户展示出上述中间数据,这样虽然不能及时地向用户反馈最终的结果数据,但是通过展示上述中间数据可以让用户及时地了解到该目标请求所对应的数据处理的具体情况,避免了用户长时间的空白等待。同时,还可以为后续对目标请求所对应的数据处理进行相应的调整控制提供参考依据。
例如,客户端可以向技术人员展示出以下中间数据:当前服务器针对A订单数据的修改进度,以及在修改过程中的处理环境数据:调用了2号线程、2号线程当前处于拥堵状态等。通过上述处理环境数据可以判断导致目标请求所对应的数据处理超时的一个原因可能为该数据处理所调用的2号线程目前较为拥堵,导致该数据处理无法及时完成。
在这种情况下,如果想要提高处理效率,以便尽快完成目标请求所对应的数据处理,可以先检测服务器中是否存在当前较为空闲的线程。例如,检测出当前服务器中的1号线程较为空闲。这时可以生成对应的调整参数:将目标请求所对应的数据处理所调用的2号线程更换为1号线程,并将上述调整参数发送至服务器。
服务器在接收到上述调整参数后,可以根据上述调整参数,将目标请求所对应的数据处理所调用的2号线程更换成当前较为空闲的1号线程,通过1号线程继续进行目标请求所对应的数据处理,从而可以提高处理效率,减短最终的结果数据的等待时间。
在另一个场景示例中,为了满足不同用户针对超时的数据处理的个性化查询需求,客户端还可以支持用户自行查询目标请求的中间数据。
例如,参阅图3所示,技术人员可以通过点击客户端所展示的查询图标发出指示查询的操作。客户端在接收到上述操作后,确定用户想要查询某个超时的目标请求所对应的数据处理,可以生成一个查询指示,从而获取得到了一个查询指示。同时,客户端还会展示出预设输入框。技术人员可以通过预设输入框输入所要查询的目标请求的身份ID:ihu2019111fj。同时,还可以根据自己需要勾选想要查询的具体的中间数据类型。例如,可以在上述预设输入框中勾选技术人员较为关注的中间数据:处理环境数据。
进而客户端可以根据上述查询指示,以及待查询的目标请求的身份ID和所勾选的中间数据生成第二查询请求,并将第二查询请求发送至服务器。
服务器在接收到上述第二查询请求后,可以根据第二查询请求,从与身份ID:ihu2019111fj对应的数据记录表中获取所记录的处理环境数据:调用了2号线程、2号线程当前处于拥堵状态等反馈给客户端,再由客户端展示给技术人员,从而可以使得技术人员能有针对性地获取自己所关注的处理过程中的中间数据,进一步改善了交互体验。
由上述场景示例可见,本说明书提供的数据处理方法,由于通过在数据处理之前,先生成对应的身份信息来指示数据处理请求,以及数据处理请求所对应的数据处理;在数据处理过程中,自动检测是否在第一预设时间内接收到结果数据,判断数据处理是否超时,在超时的情况下发送携带有对应身份信息的标记请求,以便服务器标记出超时的目标请求,并记录下目标请求的中间数据;又通过发送基于目标请求的身份信息所生成的第一查询请求,以便及时地从服务器获取超时的目标请求的中间数据展示给用户,从而解决了现有方法中存在的数据处理超时的情况下客户端无法及时获取超时的数据处理的处理情况、交互体验差的技术问题,达到能及时、高效地向客户端反馈超时的数据处理的中间数据,改善了数据处理过程中的交互体验的技术效果。
参阅图4所示,本说明书实施例提供了一种数据处理方法,其中,该方法具体应用于客户端一侧。具体实施时,该方法可以包括以下内容。
S41:获取数据处理请求,并生成所述数据处理请求的身份信息。
在本实施例中,上述数据处理请求具体可以理解向负责数据处理的服务器请求进行相应的数据处理的请求数据。
在本实施例中,上述客户端具体还可以是前端页面,相应的,服务器还可以是后台业务***。即,上述方法还可以应用于前端页面与后台业务***的交互场景中。当然,上述所列举应用场景只是一种示意性说明。具体实施时,根据具体情况还可以将上述方法应用于其他涉及交互的应用场景中。对此,本说明书不作限定。
在本实施例中,上述身份信息(例如身份ID等)具体可以理解为一种用于指示数据处理请求的字符组。其中,不同的数据处理请求的身份信息不同。后续,还可以利用上述身份信息来指示数据处理请求所对应的数据处理。
在本实施例中,具体实施时,客户端可以采集用户的操作数据,例如采集用户对某个图标点击操作或者对客户端的某个按钮的按压操作,并根据上述的操作数据生成对应的数据处理请求;客户端也可以接收用户通过输入框输入的命令数据,并根据上述命令数据生成对应的数据处理请求等等。
在客户端生成对应的数据处理请求的同时,客户端还可以根据预设的生成规则,为该数据处理请求生成对应的身份信息。例如,客户端可以根据预设的时间规则将生成数据处理请求的流水号和用户的ID号进行拼接,将拼接后的字符组作为该数据处理请求的身份信息等。当然,上述所列举的身份信息的生成方式只是一种示意性说明。具体实施时,根据具体情况也可以采用其他合适的生成方式来生成数据处理请求的身份信息。对此,本说明书不作限定。
S42:向服务器发送所述数据处理请求,其中,所述数据处理请求携带有身份信息,所述服务器用于响应所述数据处理请求进行数据处理,以返回所述数据处理请求的结果数据。
在本实施例中,具体实施时,客户端可以将上述携带有身份信息的数据处理请求发送给服务器。服务器在接收到上述数据处理请求后,可以先建立数据处理请求,以及即将进行的数据处理请求所对应的数据处理与该身份信息的对应关系。这样后续可以通过身份信息确定出对应的数据处理请求,以及对应的数据处理。接着服务器可以根据上述数据处理请求,进行对应的数据处理,以得到结果数据。
其中,上述结果数据具体可以理解为一种服务器在完成对应的数据处理后所要反馈给客户端的数据。具体的,上述结果数据具体可以是一种数据处理过程中最终得到的一个具体数据,也可以是一种用于提示数据处理完成的提示信息等等。对于上述结果数据的具体内容,本说明书不作限定。
在本实施例中,客户端在向服务器发送上述携带有身份信息的数据处理请求的同时,还会记录下该数据处理请求的发送时间,以便后续可以结合数据处理请求的发送时间确定是否出现数据处理超时。
S43:检测是否在第一预设时间内接收到所述结果数据;在确定在第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求;其中,所述标记请求携带有所述数据处理请求的身份信息,所述服务器还用于根据所述标记请求将所述身份信息所对应的数据处理请求标记为目标请求,并记录与所述目标请求所对应的数据处理相关的中间数据。
在本实施例中,上述第一预设时间具体可以理解为一种判断是否超时的时间阈值。当客户端自发送时间起,超过第一预设时间还没有接收到结果数据时,可以判断已经出现了超时。相对的,当客户端自发送时间起,在第一预设时间内接收到了结果数据,可以判断没有出现超时。其中,上述第一预设时间的具体时长可以根据用户要求,以及服务器的处理性能灵活设置。对此,本说明书不作限定。
在本实施例中,上述标记请求具体可以理解为一种请求服务器将出现超时的数据处理请求进行标记(例如可以标记为目标请求),以区别其他数据处理请求的请求数据。
在本实施例中,上述中间数据具体可以理解为与被标记的数据处理请求所对应的数据处理过程相关的数据。具体的,上述中间数据可以包括:数据处理的状态数据、数据处理的进度数据、数据处理的环境数据、处理处理中的中间结果数据等等。当然,上述所列举的中间数据只是一种示意性说明。具体实施时,根据具体情况还可以引入其他类型和内容的数据作为上述中间数据。对此,本说明书不作限定。
在本实施例中,具体实施时,检测是否在第一预设时间内接收到所述结果数据,具体实施时,可以包括:客户端自发送时间起计时,检测是否在第一预设时间内接收到数据处理请求的结果数据,如果在第一预设时间内接收到该结果数据,则判断该数据处理请求所对应的数据处理没有出现超时,停止后续的处理。如果在第一预设时间内没有接收该结果数据,则判断该数据处理请求所对应的数据处理出现超时,进而可以进行后续的处理。
在本实施例中,在确定在第一预设时间内没有接收到结果数据的情况下,可以先获取该数据处理请求身份信息,并根据该身份信息生成对应的标记请求,其中,上述标记请求可以携带在第一预设时间内没有接收到结果数据的数据处理请求的身份信息。再向服务器发送上述标记请求。
服务器在接收到上述标记请求后,可以根据标记请求所携带的身份信息找到对应的数据处理请求,并将该数据处理请求标记为目标请求。具体的,服务器可以通过对上述数据处理请求设置预设标签来标记出目标请求等。当然,上述所列举的标记目标请求的方式只是一种示意性说明。具体实施时,根据具体情况也可以采用其他合适的方式来标记目标请求。对此,本说明书不作限定。
通过标记出目标请求,服务器可以更加有效地对已经超时的数据处理请求,即目标请求所对应的数据处理进行监控。具体的,服务器可以为目标请求建立数据记录表,其中,上述数据记录表中也携带有目标请求的身份信息。服务器在进行目标请求所对应的数据处理时,可以同时在该数据记录表中记录下处理过程出现的与数据处理相关的中间数据,以备后续使用。
S44:间隔第二预设时间,向所述服务器发送第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息,所述服务器还用于根据所述第一查询请求获取并返回目标请求的中间数据。
在本实施例中,上述第一查询请求具体可以理解为客户端定时向服务器发送的请求获取目标请求的中间数据的请求数据。其中,上述第一查询请求中可以携带有目标请求的身份信息。
在本实施例中,上述第二预设时间具体可以理解为一种判断是否需要发送第一查询请求的时间阈值。通常自上一次发送第一查询请求起,每间隔一个第二预设时间,客户端可以向服务器发送一次第一查询请求。其中,上述第二预设时间的具体时长可以根据用户对数据处理的关注程度,以及数据处理的正常耗时长度确定。例如,用户如果对该数据处理的进展情况的关注度较高,可以将第二预设时间的时长设置将相对较短,例如设置为1秒。如果关注度较低,可以将第二预设时间的时长设置得相对较长,例如设置为30秒等。
此外,为了满足用户的个性化需求,客户端还可以为用户提供设置接口,通过该设置接口,用户可以根据自己需要设置合适的时长作为上述第二预设时间。
在本实施例中,上述间隔第二预设时间,向所述服务器发送第一查询请求,具体实施时,可以包括:客户端每间隔一个第二预设时间,向服务器发送一次携带有目标请求的身份信息的第一查询请求,以获取目标请求所对应的数据处理的最新的中间数据,达到自动进行定时轮询。
相应的,服务器在接收到客户端发送的第二查询请求后,可以根据第一查询请求所携带的身份信息,确定出对应的携带有相同身份信息的数据记录表,并查询该数据记录表获取该数据处理的中间数据作为目标请求的中间数据,反馈给用户。
具体的,服务器可以将数据记录表中自开始记录时间起到当前时间这段时间内所记录的所有中间数据作为目标请求的中间数据一起反馈给用户,也可以将数据记录表中自上一次第一查询请求的接收时间起到当前时间这段时间内所记录的中间数据作为目标请求的中间数据反馈给用户,还可以将数据列表中按照用户设置的某一个时间段的某几个类型的中间数据作为目标请求的中间数据反馈给用户等等。
S45:接收并展示所述目标请求的中间数据。
在本实施例中,客户端在接收到服务器所反馈的目标请求的中间数据后,可以通过客户端向用户展示出目标请求的中间数据。这样用户虽然还不能获取到最终的结果数据,但通过所展示的目标请求的中间数据,可以及时地了解到目标请求所对应的数据处理最新的数据处理情况,避免了空白等待;也可以将所展示目标请求的中间数据作为参考数据,根据具体情境,对目标请求所对应的数据处理进行相应的调整控制,以提高处理效率。
由上可见,本说明书实施例提供的数据处理方法,由于通过在数据处理之前,先生成对应的身份信息来指示数据处理请求,以及数据处理请求所对应的数据处理;在数据处理过程中,自动检测是否在第一预设时间内接收到结果数据,判断数据处理是否超时,在超时的情况下发送携带有对应身份信息的标记请求,以便服务器标记出超时的目标请求,并记录下目标请求的中间数据;又通过发送基于目标请求的身份信息所生成的第一查询请求,以便及时地从服务器获取超时的目标请求的中间数据展示给用户,从而解决了现有方法中存在的数据处理超时的情况下客户端无法及时获取超时的数据处理的处理情况、交互体验差的技术问题,达到能及时、高效地向客户端反馈超时的数据处理的中间数据,改善了数据处理过程中的交互体验的技术效果。
在一个实施例中,在确定在第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求后,所述方法具体实施时,还可以包括以下内容:接收查询指示,以及目标请求的身份信息;响应所述查询指示,并根据所述目标请求的身份信息生成第二查询请求;向服务器发送所述第二查询请求,其中,所述服务器还用于根据所述第二查询请求,获取并返回目标请求的中间数据;接收并展示所述目标请求的中间数据。
在本实施例中,上述查询指示具体可以理解为一种根据用户需要由用户通过触发操作所生成的针对目标请求的查询指示。上述第二查询请求具体可以理解为根据由用户所触发的查询指示请求查询目标请求的中间数据的请求数据。
在本实施例中,用户可以根据具体情况和处理需求,在没有发送第一查询请求的时间段中,通过触发生成查询指示,进而生成并发送对应的第二查询请求来查询目标请求的中间数据。
在本实施例中,具体实施时,客户端可以接收并响应用户发起的预设的触发操作,生成对应的查询指示。其中,上述预设的触发操作具体可以包括:用户对客户端所展示的某个预设图标的点击操作,用户对客户端上的按键的按压操作,或者用户通过客户端输入的语音查询指令等等。
客户端在生成上述查询指示的同时,还会向用户展示对应的预设输入框,用户可以通过预设输入框输入想要查询的目标请求的身份信息。当然,具体实施时,客户端也可以采用其他的方式来获取用户想要查询的目标请求的身份信息。例如,客户端可以开启内置于客户端的收音设备(例如内置麦克风),并通过语音引导用户说出想要查询的目标请求的身份信息等等。对此,本说明书不作限定。
客户端在获取了上述目标请求的身份信心和查询指示后,进一步可以生成针对目标请求的第二查询请求,其中,第二查询请求可以携带有用户想要查询的目标请求的身份信息。并将上述第二查询请求发送至服务器。
服务器在接收到上述第二查询请求后,可以根据第二查询请求所携带的身份信息,找到对应的数据记录表,并通过查询数据记录表获取目标请求的中间数据,反馈给客户端。
在一个实施例中,上述接收查询指示,以及目标请求的身份信息,具体实施时,可以包括以下内容:响应预设的触发操作生成查询指示,并展示预设输入框;通过所述预设输入框接收所述目标请求的身份信息。
在本实施例中,客户端除了可以通过上述预设输入框接收用户输入的想要查询的目标请求的身份信息外,还可以通过预设输入接收用户的选择信息,例如,用户所选择的时间段、用户所选择的中间数据等等。进而可以根据上述选择信息,生成对应的第二查询请求以便获取满足该用户个性化要求的中间数据,以提高交互体验。
例如,用户可以在预设输入框中选择第二时间段和处理进度数据作为选择信息。客户端可以结合上述选择信息生成对应的第二查询请求,并将该请求发送至服务器。服务器在接收到上述第二查询请求后,可以根据第二查询请求中所包含的选择信息,有选择性地从目标请求的数据记录表中抽取第二时间段内记录的处理进度数据作为目标请求的中间数据反馈给客户端。
在一个实施例中,在接收并展示所述目标请求的中间数据后,所述方法具体实施时,还可以包括以下内容:根据所述目标请求的中间数据,生成针对所述目标请求的调整参数;向所述服务器发送所述调整参数,其中,所述服务器还用于根据所述调整参数调整目标请求所对应的数据处理。
在本实施例中,为了进一步提高交互体验,同时也为了提高数据处理效率,或者满足不同场景下处理需求,客户端还可以根据所反馈的中间数据,结合用户的处理需求以及服务器的性能参数、当前运行状况等因素,基于当前目标请求所对应的数据处理的处理情况,确定出更适合上述数据处理的优化处理方案,并基于上述优化处理方案,生成对应的调整参数。并将上述调整参数发送至服务器。
其中,上述调整参数具体可以理解为一种用于对当前目标请求所对应的数据处理进行调整的参数数据。具体的,上述调整参数可以包括以下至少之一:优先级的设置参数、处理线程更换参数、数据处理的暂停指示等等。当然,需要说明的是,上述所列举的调整参数只是一种示意性说明。具体实施时,根据情况还可以引入其他类型的参数作为上述调整参数。对此,本说明书不作限定。
需要补充的是,具体实施时,客户端也可以只负责向用户展示上述中间数据,由用户根据具体情况,自行在客户端上设置相应的调整参数,再由客户端将所接收到的调整参数发送至服务器。
服务器在接收到上述调整参数后,可以根据调整参数调整目标请求所对应的数据处理,从而使得该数据处理可以按照优化处理方案进行,提高数据处理效率,进一步提高交互体验。
由上可见,本说明书实施例提供的数据处理方法,由于通本说明书实施例提供的数据处理方法,由于通过在数据处理之前,先生成对应的身份信息来指示数据处理请求,以及数据处理请求所对应的数据处理;在数据处理过程中,自动检测是否在第一预设时间内接收到结果数据,判断数据处理是否超时,在超时的情况下发送携带有对应身份信息的标记请求,以便服务器标记出超时的目标请求,并记录下目标请求的中间数据;又通过发送基于目标请求的身份信息所生成的第一查询请求,以便及时地从服务器获取超时的目标请求的中间数据展示给用户,从而解决了现有方法中存在的数据处理超时的情况下客户端无法及时获取超时的数据处理的处理情况、交互体验差的技术问题,达到能及时、高效地向客户端反馈超时的数据处理的中间数据,改善了数据处理过程中的交互体验的技术效果;还通过根据所反馈的超时的目标请求的中间数据生成并发送对应的调整参数,以便能够根据具体情景,通过上述调整参数控制服务器更好更高效地进行目标请求所对应的数据处理,提高了数据处理效率,进一步改善了数据处理过程中的交互体验。
参阅图5所示,本说明书实施例还提供了一种数据处理方法,该方法具体应用于服务器一侧,该方法具体实施时,可以包括以下内容。
S51:接收客户端发送的标记请求,其中,所述标记请求携带有数据处理请求的身份信息,所述标记请求为客户端在第一预设时间内没有接收到所述数据处理请求的结果数据的情况下生成并发送的;
S52:根据所述标记请求,将所身份信息所对应的数据处理请求标记为目标请求;
S53:记录目标请求的中间数据。
在一个实施例中,上述记录目标请求的中间数据,具体实施时,可以包括以下内容:建立针对所述目标请求的数据记录表;采集与所述目标请求所对应的数据处理相关的中间数据,并在所述数据记录表记录所述中间数据。
在一个实施例中,在记录目标请求的中间数据后,所述方法具体实施时,还可以包括以下内容:接收第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息,所述第一查询请求为客户端间隔第二预设时间生成并发送的;根据所述第一查询请求,查询所述数据记录表,获取所述目标请求的中间数据;向客户端发送所述中间数据。
在一个实施例中,在记录目标请求的中间数据后,所述方法具体实施时,还可以包括以下内容:接收第二查询请求,其中,所述第二查询请求携带有目标请求的身份信息,所述第二查询请求为客户端根据所接收的查询指示,以及目标请求的身份信息生成的;根据所述第二查询请求,查询所述数据记录表,获取所述目标请求的中间数据;向客户端发送所述中间数据。
在一个实施例中,所述方法具体实施时,还可以包括以下内容:接收针对所述目标请求的调整参数;根据所述调整参数,调整所述目标请求所对应的数据处理。
在一个实施例中,在接收客户端发送的标记请求前,所述方法具体实施时,还可以包括以下内容:获取数据处理请求,其中,所述数据处理请求携带有身份信息;根据所述数据处理请求,进行数据处理,以得到所述数据处理请求的结果数据。
本说明书实施例还提供了一种数据处理方法,该方法具体应用于包含有服务器和客户端的***中,该方法具体实施时,可以包括以下内容。
客户端获取数据处理请求,并生成所述数据处理请求的身份信息;
客户端向服务器发送所述数据处理请求,其中,所述数据处理请求携带有身份信息;
服务器响应所述数据处理请求进行数据处理,以得到所述数据处理请求的结果数据;
客户端检测是否在第一预设时间内接收到所述结果数据;在确定在第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求;其中,所述标记请求携带有所述数据处理请求的身份信息;
服务器根据所述标记请求将所述身份信息所对应的数据处理请求标记为目标请求,并记录与所述目标请求所对应的数据处理相关的中间数据;
客户端间隔第二预设时间,向所述服务器发送第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息;
服务器根据所述第一查询请求获取并发送目标请求的中间数据;
客户端接收并展示所述目标请求的中间数据。
在一个实施例中,所述方法具体实施时,还可以包括以下内容:客户端根据所述接收的查询指示,以及目标请求的身份信息生成第二查询请求;客户端向服务器发送所述第二查询请求;服务器根据所述第二查询请求,获取并发送目标请求的中间数据。
由上可见,本说明书实施例提供的数据处理方法,在数据处理之前,客户端先生成对应的身份信息来指示数据处理请求,以及数据处理请求所对应的数据处理;在数据处理过程中,客户端自动检测是否在第一预设时间内接收到结果数据,判断数据处理是否超时,在超时的情况下发送携带有对应身份信息的标记请求,以便服务器标记出超时的目标请求,并由服务器记录下目标请求的中间数据;又通过客户端发送基于目标请求的身份信息所生成的第一查询请求,以便及时地从服务器获取超时的目标请求的中间数据展示给用户,从而解决了现有方法中存在的数据处理超时的情况下客户端无法及时获取超时的数据处理的处理情况、交互体验差的技术问题,达到能及时、高效地向客户端反馈超时的数据处理的中间数据,改善了数据处理过程中的交互体验的技术效果。
本说明书实施例还提供一种客户端,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:获取数据处理请求,并生成所述数据处理请求的身份信息;向服务器发送所述数据处理请求,其中,所述数据处理请求携带有身份信息,所述服务器用于响应所述数据处理请求进行数据处理,以返回所述数据处理请求的结果数据;检测是否在第一预设时间内接收到所述结果数据;在确定在第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求;其中,所述标记请求携带有所述数据处理请求的身份信息,所述服务器还用于根据所述标记请求将所述身份信息所对应的数据处理请求标记为目标请求,并记录与所述目标请求所对应的数据处理相关的中间数据;间隔第二预设时间,向所述服务器发送第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息,所述服务器还用于根据所述第一查询请求获取并返回目标请求的中间数据;接收并展示所述目标请求的中间数据。
为了能够更加准确地完成上述指令,参阅图6所示,本说明书实施例还提供了另一种具体的客户端,其中,所述客户端包括网络通信端口601、处理器602以及存储器603,上述结构通过内部线缆相连,以便各个结构可以进行具体的数据交互。
其中,所述网络通信端口601,具体可以用于获取数据处理请求,并生成所述数据处理请求的身份信息。
所述处理器602,具体可以用于向服务器发送所述数据处理请求,其中,所述数据处理请求携带有身份信息,所述服务器用于响应所述数据处理请求进行数据处理,以返回所述数据处理请求的结果数据;检测是否在第一预设时间内接收到所述结果数据;在确定在第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求;其中,所述标记请求携带有所述数据处理请求的身份信息,所述服务器还用于根据所述标记请求将所述身份信息所对应的数据处理请求标记为目标请求,并记录与所述目标请求所对应的数据处理相关的中间数据;间隔第二预设时间,向所述服务器发送第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息,所述服务器还用于根据所述第一查询请求获取并返回目标请求的中间数据;接收并展示所述目标请求的中间数据。
所述存储器603,具体可以用于存储处理器602所基于的相应的指令程序。
在本实施例中,所述网络通信端口601可以是与不同的通信协议进行绑定,从而可以发送或接收不同数据的虚拟端口。例如,所述网络通信端口可以是负责进行web数据通信的80号端口,也可以是负责进行FTP数据通信的21号端口,还可以是负责进行邮件数据通信的25号端口。此外,所述网络通信端口还可以是实体的通信接口或者通信芯片。例如,其可以为无线移动网络通信芯片,如GSM、CDMA等;其还可以为Wifi芯片;其还可以为蓝牙芯片。
在本实施例中,所述处理器602可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。本说明书并不作限定。
在本实施例中,所述存储器603可以包括多个层次,在数字***中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在***中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
本说明书实施例还提供一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:接收客户端发送的标记请求,其中,所述标记请求携带有数据处理请求的身份信息,所述标记请求为客户端在第一预设时间内没有接收到所述数据处理请求的结果数据的情况下生成并发送的;根据所述标记请求,将所身份信息所对应的数据处理请求标记为目标请求;记录目标请求的中间数据。
本说明书实施例还提供了一种基于上述数据处理方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:获取数据处理请求,并生成所述数据处理请求的身份信息;向服务器发送所述数据处理请求,其中,所述数据处理请求携带有身份信息,所述服务器用于响应所述数据处理请求进行数据处理,以返回所述数据处理请求的结果数据;检测是否在第一预设时间内接收到所述结果数据;在确定在第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求;其中,所述标记请求携带有所述数据处理请求的身份信息,所述服务器还用于根据所述标记请求将所述身份信息所对应的数据处理请求标记为目标请求,并记录与所述目标请求所对应的数据处理相关的中间数据;间隔第二预设时间,向所述服务器发送第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息,所述服务器还用于根据所述第一查询请求获取并返回目标请求的中间数据;接收并展示所述目标请求的中间数据。
本说明书实施例还提供了另一种基于上述数据处理方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:接收客户端发送的标记请求,其中,所述标记请求携带有数据处理请求的身份信息,所述标记请求为客户端在第一预设时间内没有接收到所述数据处理请求的结果数据的情况下生成并发送的;根据所述标记请求,将所身份信息所对应的数据处理请求标记为目标请求;记录目标请求的中间数据。
在本实施例中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施例中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
参阅图7所示,在软件层面上,本说明书实施例还提供了一种数据处理装置,该装置具体可以包括以下的结构模块:
获取模块701,具体可以用于获取数据处理请求,并生成所述数据处理请求的身份信息;
第一发送模块702,具体可以用于向服务器发送所述数据处理请求,其中,所述数据处理请求携带有身份信息,所述服务器用于响应所述数据处理请求进行数据处理,以返回所述数据处理请求的结果数据;
检测模块703,具体可以用于检测是否在第一预设时间内接收到所述结果数据;在确定在第一预设时间内没有接收到所述结果数据的情况下,向服务器发送标记请求;其中,所述标记请求携带有所述数据处理请求的身份信息,所述服务器还用于根据所述标记请求将所述身份信息所对应的数据处理请求标记为目标请求,并记录与所述目标请求所对应的数据处理相关的中间数据;
第二发送模块704,具体可以用于间隔第二预设时间,向所述服务器发送第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息,所述服务器还用于根据所述第一查询请求获取并返回目标请求的中间数据;
展示模块705,具体可以用于接收并展示所述目标请求的中间数据。
在一个实施例中,具体实施时,获取模块701,具体还可以用于接收查询指示,以及目标请求的身份信息;并响应所述查询指示,并根据所述目标请求的身份信息生成第二查询请求;
第二发送模块704,具体还可以用于向服务器发送所述第二查询请求,其中,所述服务器还用于根据所述第二查询请求,获取并返回目标请求的中间数据。
在一个实施例中,上述获取模块701具体可以包括以下结构单元:
第一生成单元,具体可以用于响应预设的触发操作生成查询指示,并展示预设输入框;
第一接收单元,具体可以用于通过所述预设输入框接收所述目标请求的身份信息。
在一个实施例中,所述装置具体还可以包括调整模块,具体可以用于根据所述目标请求的中间数据,生成针对所述目标请求的调整参数;向所述服务器发送所述调整参数,其中,所述服务器还用于根据所述调整参数调整目标请求所对应的数据处理。
在一个实施例中,所述调整参数包括以下至少之一:优先级的设置参数、处理线程更换参数、数据处理的暂停指示等等。
需要说明的是,上述实施例阐明的单元、装置或模块等,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
由上可见,本说明书实施例提供的数据处理装置,由于通过在数据处理之前,通过获取模块先生成对应的身份信息来指示数据处理请求,以及数据处理请求所对应的数据处理;在数据处理过程中,通过检测模块自动检测是否在第一预设时间内接收到结果数据,判断数据处理是否超时,在超时的情况下发送携带有对应身份信息的标记请求,以便服务器标记出超时的目标请求,并记录下目标请求的中间数据;又通过第二发送模块发送基于目标请求的身份信息所生成的第一查询请求,以便及时地从服务器获取超时的目标请求的中间数据展示给用户,从而解决了现有方法中存在的数据处理超时的情况下客户端无法及时获取超时的数据处理的处理情况、交互体验差的技术问题,达到能及时、高效地向客户端反馈超时的数据处理的中间数据,改善了数据处理过程中的交互体验的技术效果。
参阅图8所示,在软件层面上,本说明书实施例还提供了另一种数据处理装置,该装置具体可以包括以下的结构模块:
接收模块801,具体可以用于接收客户端发送的标记请求,其中,所述标记请求携带有数据处理请求的身份信息,所述标记请求为客户端在第一预设时间内没有接收到所述数据处理请求的结果数据的情况下生成并发送的;
标记模块802,具体可以用于根据所述标记请求,将所身份信息所对应的数据处理请求标记为目标请求;
记录模块803,具体可以用于记录目标请求的中间数据。
在一个实施例中,上述记录模块803具体可以包括以下结构单元:
建立单元,具体可以用于建立针对所述目标请求的数据记录表;
记录单元,具体可以用于采集与所述目标请求所对应的数据处理相关的中间数据,并在所述数据记录表记录所述中间数据。
在一个实施例中,上述装置具体实施时还可以包括查询模块,具体可以用于接收第一查询请求,其中,所述第一查询请求携带有目标请求的身份信息,所述第一查询请求为客户端间隔第二预设时间生成并发送的;根据所述第一查询请求,查询所述数据记录表,获取所述目标请求的中间数据;向客户端发送所述中间数据。
在一个实施例中,上述查询模块具体实施时,还可以用于接收第二查询请求,其中,所述第二查询请求携带有目标请求的身份信息,所述第二查询请求为客户端根据所接收的查询指示,以及目标请求的身份信息生成的;根据所述第二查询请求,查询所述数据记录表,获取所述目标请求的中间数据;向客户端发送所述中间数据。
在一个实施例中,上述装置具体还可以包括调整模块,具体可以用于接收针对所述目标请求的调整参数;根据所述调整参数,调整所述目标请求所对应的数据处理。
在一个实施例中,上述装置具体还可以包括处理模块,具体可以用于获取数据处理请求,其中,所述数据处理请求携带有身份信息;根据所述数据处理请求,进行数据处理,以得到所述数据处理请求的结果数据。
虽然本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
通过以上的实施例的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本说明书可用于众多通用或专用的计算机***环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器***、基于微处理器的***、置顶盒、可编程的电子设备、网络PC、小型计算机、大型计算机、包括以上任何***或设备的分布式计算环境等等。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。