CN105630583A - 一种数据处理方法和装置 - Google Patents

一种数据处理方法和装置 Download PDF

Info

Publication number
CN105630583A
CN105630583A CN201410697071.1A CN201410697071A CN105630583A CN 105630583 A CN105630583 A CN 105630583A CN 201410697071 A CN201410697071 A CN 201410697071A CN 105630583 A CN105630583 A CN 105630583A
Authority
CN
China
Prior art keywords
task
result
computer system
eigenvalue
processing
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.)
Pending
Application number
CN201410697071.1A
Other languages
English (en)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410697071.1A priority Critical patent/CN105630583A/zh
Publication of CN105630583A publication Critical patent/CN105630583A/zh
Pending legal-status Critical Current

Links

Abstract

本发明实施例公开了一种数据处理方法和装置,计算机系统处理具有相同特征值的任务获得相同的处理结果,接收到第一任务,所述第一任务具有对应的特征值;在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,若判断结果为是,不处理所述第一任务,将所述第一任务设置为等待状态;通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果;取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。可见这样使得计算机系统不会出现同时对多个具有相同特征值的任务进行处理的重复计算情况,提高了计算机系统的处理效率。

Description

一种数据处理方法和装置
技术领域
本发明涉及数据处理领域,特别是涉及一种数据处理方法和装置。
背景技术
计算机系统所处理的任务的特点是,具有相同特征值的任务被计算机系统处理后的处理结果均相同,所述特征值由计算机系统通过对任务的特征数据进行分析后得到。根据这一特点,计算机系统在处理任务时,会在缓存中保存任务处理结果与特征值之间的对应关系以及所述任务处理结果。并在处理任务前,根据接收到的任务的特征值查找是否有保存的对应关系,当查找到对应关系时,可以不对所述接收到的任务进行处理,而直接调用对应关系中所述任务处理结果作为所述接收到的任务的处理结果,由此避免了大量的重复计算,提高了效率。
但是,计算机系统中经常会因为处理环境改变、缓存内容更新或其他原因导致缓存中的保存的任务处理结果与特征值之间的对应关系以及所述任务处理结果丢失或失效。这种情况下,现有技术的解决方案是,对所有没有查找到所述对应关系的任务进行处理,得到处理结果后,在缓存中保存任务处理结果与特征值之间的对应关系以及所述任务处理结果。
现有技术的问题是,由于计算机系统同时接收到的任务很多,那么在对所有没有查找到对应关系的任务进行处理的处理过程中,可能会出现多个具有相同特征值的任务同时都在被计算机系统处理的情况,但是这些多个具有相同特征值的任务的处理结果其实都是一样的,由此造成了大量的重复计算,降低计算机系统的处理效率。
发明内容
为了解决上述技术问题,本发明提供了数据处理方法和装置,已使得在对所有没有查找到对应关系的任务进行处理的处理过程中,不会出现重复计算的情况。
本发明实施例公开了如下技术方案:
一种数据处理方法,应用于计算机系统,所述计算机系统处理具有相同特征值的任务获得相同的处理结果,包括:
所述计算机系统接收到第一任务,所述第一任务具有对应的特征值;
所述计算机系统在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,所述第二任务对应的特征值与所述第一任务对应的特征值相同;
若判断结果为是,所述计算机系统不处理所述第一任务,将所述第一任务设置为等待状态;
所述计算机系统通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果;
所述计算机系统取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。
优选的,还包括:
若所述判断结果为否,所述计算机系统通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
优选的,在所述计算机系统通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果后,还包括:
所述计算机系统判断是否有第三任务处于等待状态,所述第三任务的特征值与所述第一任务的特征值相同;
若判断结果为是,所述计算机系统取消所述第三任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第三任务的处理结果。
优选的,所述若判断结果为有,所述计算机系统不处理所述第一任务,将所述第一任务设置为等待状态,还包括:
所述计算机系统为所述第一任务设置预设等待时间;
当所述第一任务处于等待状态的时间超过所述预设等待时间时,所述计算机系统取消所述第一任务的等待状态,对所述第一任务进行处理。
优选的,
所述预设等待时间为所述计算机系统处理具有与所述第一任务相同特征值的任务的平均处理时间或最大处理时间。
一种数据处理装置,应用于计算机系统,所述计算机系统处理具有相同特征值的任务获得相同的处理结果,包括:
接收单元,用于接收到第一任务,所述第一任务具有对应的特征值;
第一判断单元,用于在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,所述第二任务对应的特征值与所述第一任务对应的特征值相同;
若所述第一判断单元的判断结果为是,触发设置单元,所述设置单元不处理所述第一任务,将所述第一任务设置为等待状态;
第一处理单元,用于通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果;
读取单元,用于取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。
优选的,还包括:
若所述第一判断单元的所述判断结果为否,触发第二处理单元,所述第二处理单元,用于通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
优选的,在触发所述第二处理单元后,还包括:
第二判断单元,用于判断是否有第三任务处于等待状态,所述第三任务的特征值与所述第一任务的特征值相同;
若所述第二判断单元的判断结果为是,触发所述读取单元,所述读取单元还用于取消所述第三任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第三任务的处理结果。
优选的,
所述设置单元,还用于为所述第一任务设置预设等待时间;
当所述第一任务处于等待状态的时间超过所述预设等待时间时,触发所述第二处理单元,所述第二处理单元还用于取消所述第一任务的等待状态,对所述第一任务进行处理。
优选的,
所述预设等待时间为所述计算机系统处理具有与所述第一任务相同特征值的任务的平均处理时间或最大处理时间。
由上述技术方案可以看出,当通过接收到的第一任务的特征值没有查找到所述特征值与处理结果的对应关系时,会在处理所述第一任务之前判断是否有具有相同特征值的第二任务正在被处理中,如果有,则不会对所述第一任务进行处理,将所述第一任务设置为等待状态等待所述第二任务的处理结果,这样使得计算机系统不会出现同时对多个具有相同特征值的任务进行处理的重复计算情况,提高了计算机系统的处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据处理方法的方法流程图;
图2为本发明实施例提供的一种数据处理方法的方法流程图;
图3为本发明实施例提供的一种数据处理装置的装置结构图;
图4为本发明实施例提供的一种数据处理装置的装置结构图;
图5为本发明实施例提供的一种数据处理装置的装置结构图。
具体实施方式
现有技术中,当计算机系统根据一个任务A的特征值没有查找到该特征值与一个处理结果之间的对应关系时,一般会对所述任务A进行处理。然而,鉴于计算机系统单位时间内处理任务的数量,很可能会出现所述计算机系统在同一时间处理任务A以及具有与任务A相同特征值的其他任务的情况。任务A和与具有任务A相同特征值的其他任务的处理结果实际上均是相同的,相当于进行了大量的重复计算,降低计算机系统的处理效率,甚至会增加处理时间。为此,本发明实施例提供了一种数据处理方法和装置,当通过接收到的第一任务的特征值没有查找到所述特征值与处理结果的对应关系时,会在处理所述第一任务之前判断是否有具有相同特征值的第二任务正在被处理中,如果有,则不会对所述第一任务进行处理,将所述第一任务设置为等待状态等待所述第二任务的处理结果。可见,具有相同特征值的多个任务中只有最先被计算机系统接收到的一个会被处理,所述多个任务中剩余的任务被就计算机系统接收后,均不会进行处理,而是将所述剩余的任务设置等待状态,这样使得计算机系统不会出现同时对多个具有相同特征值的任务进行处理的重复计算情况,提高了计算机系统的处理效率。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种数据处理方法的方法流程图,应用于计算机系统,所述计算机系统处理具有相同特征值的任务获得相同的处理结果,所述方法包括:
S101:所述计算机系统接收到第一任务,所述第一任务具有对应的特征值。
举例说明,任务的特征值可以通过分析任务的所包含的特征数据获得,一个任务一般只有一个对应的特征值,多个任务的特征值可以相同。所述特征值的特点是,具有相同特征值的任务通过处理所得到的处理结果相同。也可以理解为,具有相同特征值的任务是同一类型的任务,同一类型的任务在通过计算机系统处理后的处理结果相同。
S102:所述计算机系统在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,所述第二任务对应的特征值与所述第一任务对应的特征值相同。
举例说明,所述根据所述特征值没有查找到所述特征值与处理结果的对应关系可以理解为,所述计算机系统在缓存中没有存储所述第一任务的处理结果。这种缓存中没有存储所述第一任务的处理结果情况可以是由于缓存被重新刷新、缓存丢失或者所述计算机系统第一次接收到具有所述第一任务的特征值的任务所造成。
有现有技术处理上不同的是,在没有查找到所述特征值与处理结果的对应关系的情况下,所述计算机系统并不会直接对所述第一任务进行处理,而是先判断当前正在被处理的任务中,是否有与所述第一任务的所述特征值相同的其他任务,也就是判断是否有正在被处理的所述第二任务。通过判断是否有正在被处理的所述第二任务,可以保证同一时间具有相同特征值的任务中最多只有一个处于被处理的状态,避免出现多个具有相同特征值的任务同时被处理的情况发生。
S103:若判断结果为是,所述计算机系统不处理所述第一任务,将所述第一任务设置为等待状态。
举例说明,当判断结果为是时,可以理解为已经有所述第二任务正在被处理。由于所述第一任务和所述第二任务的处理结果相同,如果这时对所述第一任务进行处理,将会造成重复计算的情况。故所述计算机系统不处理所述第一任务,将所述第一任务设置为等待状态,以等待所述第二任务被处理完成后得到的处理结果作为所述第一任务的处理结果。
S104:所述计算机系统通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
举例说明,当获得所述第二任务的处理结果,由于当前缓存中并没有存储所述第二任务对应的处理结果,故可以将所述处理结果以及所述处理结果和所述特征值之间的对应关系保存在缓存中。所述计算机系统之后接收到具有与所述第二任务相同特征值的任务时,例如所述第一任务,可以不用处理,而通过从缓存中调用所述处理结果作为所述具有与所述第二任务相同特征值的任务的处理结果。
S105:所述计算机系统取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。
举例说明,由于具有与所述第一任务的相同特征值的所述第二任务已经被处理完成,得到处理结果。故所述计算机系统可以将把处于等待状态的所述第一任务唤醒,不对所述第一任务进行处理,而是读取所述第二任务的处理结果作为所述第一任务的处理结果。
需要注意的是,根据所述计算机系统开始处理所述第二任务的时间与所述计算机系统接收到所述第一任务的时间之差的不同,所述第一任务处于等待状态的时间也会有所不同。举例说明,例如所述计算机系统处理所述第二任务的处理时间为3秒,当所述计算机系统开始处理所述第二任务后的2.5秒接收到所述第一任务,正常情况下,所述第一任务只需处于等待状态3-2.5=0.5秒后即可从缓存中读取所述第二任务的处理结果。
由上述实施例可以看出,当通过接收到的第一任务的特征值没有查找到所述特征值与处理结果的对应关系时,会在处理所述第一任务之前判断是否有具有相同特征值的第二任务正在被处理中,如果有,则不会对所述第一任务进行处理,将所述第一任务设置为等待状态等待所述第二任务的处理结果,这样使得计算机系统不会出现同时对多个具有相同特征值的任务进行处理的重复计算情况,提高了计算机系统的处理效率。
可选的,若S102的判断结果为否,可以理解为当前所述计算机系统没有处理具有与所述第一任务相同特征值的任务,例如所述第二任务。那么,所述计算机系统为了之后在接收具有到与所述第一任务相同特征值的任务时可以直接从缓存中读取处理结果,所述计算机系统将对所述第一任务进行处理。
接下来将对所述计算机系统处理所述第一任务的情况进行描述。在如图1所对应的实施例的基础上,如图2所示,图2为本发明实施例提供的一种数据处理方法的方法流程图,所述方法还包括:
S201:所述计算机系统接收到第一任务,所述第一任务具有对应的特征值。
S202:所述计算机系统在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,所述第二任务对应的特征值与所述第一任务对应的特征值相同。
S203:若判断结果为是,所述计算机系统不处理所述第一任务,将所述第一任务设置为等待状态。
S204:所述计算机系统通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
S205:所述计算机系统取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。
S206:若S202中的所述判断结果为否,所述计算机系统通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
举例说明,当获得所述第一任务的处理结果,由于当前缓存中并没有存储所述第一任务对应的处理结果,故可以将所述处理结果以及所述处理结果和所述特征值之间的对应关系保存在缓存中。所述计算机系统之后接收到具有与所述第一任务相同特征值的任务时,可以不用处理,而通过从缓存中调用所述处理结果作为所述具有与所述第一任务相同特征值的任务的处理结果。
其中,S203和S206分别为S202中判断后的两个分支,步骤编号不存在限制执行先后顺序的作用。
可选的,由于所述计算机系统在处理所述第一任务的过程中,可能会接收到具有与所述第一任务相同特征值的任务,由于正在处理所述第一任务,故所述计算机系统会将所述接收到具有与所述第一任务相同特征值的任务设置为等待状态。针对这种情况,如图2所示,在执行S206后,所述方法还包括:
S207:所述计算机系统判断是否有第三任务处于等待状态,所述第三任务的特征值与所述第一任务的特征值相同。
举例说明,所述第三任务可以理解为所述计算机系统在接收到所述第一任务并对其进行处理时所接收到的任务,由于接收到所述第三任务时所述计算机系统正在处理所述第一任务,故可以通过如S202和S203中的操作,通过判断,确定出所述计算机系统正在处理所述第一任务,并以将所述第一任务设置为等待状态的方式,将所述第三任务设置为所述等待状态。
S208:若判断结果为是,所述计算机系统取消所述第三任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第三任务的处理结果。
举例说明,当所述计算机系统确定有处于等待状态的所述第三任务时,由于此时具有与所述第三任务的相同特征值的所述第一任务已经被处理完成,得到处理结果。故所述计算机系统可以将把处于等待状态的所述第三任务唤醒,不对所述第三任务进行处理,而是读取所述第一任务的处理结果作为所述第三任务的处理结果。提高了计算机系统的处理效率。
可选的,计算机系统在处理任务时,因为各种情况,可能会出现任务无法得到处理结果,或者处理时间远大于正常处理时间的情况。若所述第一任务被设置为等待状态,出现上述长时间得不到所述第二任务的处理结果的情况时,如果让所述第一任务一直处于等待状态而不进行处理,会占用计算机系统的大量资源,并造成系统拥堵,反而降低了系统处理效率,导致不好的用户体验。为了解决这种情况,如图2所示,在执行S203时,所述方法还包括:
S209:所述计算机系统为所述第一任务设置预设等待时间。
举例说明,所述预设等待时间可以设置为任意时间,不过为了提高处理效率,所述预设等待时间可以设置为所述计算机系统处理具有与所述第一任务相同特征值的任务的平均处理时间或最大处理时间。例如计算机系统处理所述具有与所述第一任务相同特征值的任务一般需要或最大需要耗时三秒,则可以将所述预设等待时间设置为三秒。
本发明不限定所述S203和S209的执行顺序。当S203和S209同时执行时,可以为所述计算机系统带来更高的处理效率。
S210:当所述第一任务处于等待状态的时间超过所述预设等待时间时,所述计算机系统取消所述第一任务的等待状态,对所述第一任务进行处理。
举例说明,通过设置预设等待时间,可以在出现所述第二任务无法得到处理结果,或者所述第二任务的处理时间远大于正常处理时间的情况时,防止所述第一任务长时间处于等待状态,不会占用计算机系统大量资源。并在所述第一任务处于所述等待状态的时间超出所述预设等待时间时,对所述第一任务进行处理,使得即使所述计算机系统在正常处理时间内无法得到所述第二任务的处理结果,也可以通过对所述第一任务的处理得到处理结果,由此进一步的降低了计算机系统的出错率。
图3为本发明实施例提供的一种数据处理装置的装置结构图,应用于计算机系统,所述计算机系统处理具有相同特征值的任务获得相同的处理结果,所述装置包括:
接收单元301,用于接收到第一任务,所述第一任务具有对应的特征值。
举例说明,任务的特征值可以通过分析任务的所包含的特征数据获得,一个任务一般只有一个对应的特征值,多个任务的特征值可以相同。所述特征值的特点是,具有相同特征值的任务通过处理所得到的处理结果相同。也可以理解为,具有相同特征值的任务是同一类型的任务,同一类型的任务在通过计算机系统处理后的处理结果相同。
第一判断单元302,用于在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,所述第二任务对应的特征值与所述第一任务对应的特征值相同。
举例说明,所述根据所述特征值没有查找到所述特征值与处理结果的对应关系可以理解为,在缓存中没有存储所述第一任务的处理结果。这种缓存中没有存储所述第一任务的处理结果情况可以是由于缓存被重新刷新、缓存丢失或者所述接收单元301第一次接收到具有所述第一任务的特征值的任务所造成。
有现有技术处理上不同的是,在没有查找到所述特征值与处理结果的对应关系的情况下,并不会直接对所述第一任务进行处理,而是先判断当前正在被处理的任务中,是否有与所述第一任务的所述特征值相同的其他任务,也就是判断是否有正在被处理的所述第二任务。通过判断是否有正在被处理的所述第二任务,可以保证同一时间具有相同特征值的任务中最多只有一个处于被处理的状态,避免出现多个具有相同特征值的任务同时被处理的情况发生。
若所述第一判断单元302的判断结果为是,触发设置单元303,所述设置单元303不处理所述第一任务,将所述第一任务设置为等待状态。
举例说明,当判断结果为是时,可以理解为已经有所述第二任务正在被处理。由于所述第一任务和所述第二任务的处理结果相同,如果这时对所述第一任务进行处理,将会造成重复计算的情况。故所述设置单元303不处理所述第一任务,将所述第一任务设置为等待状态,以等待所述第二任务被处理完成后得到的处理结果作为所述第一任务的处理结果。
第一处理单元304,用于通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
举例说明,当所述第一处理单元304获得所述第二任务的处理结果,由于当前缓存中并没有存储所述第二任务对应的处理结果,故可以将所述处理结果以及所述处理结果和所述特征值之间的对应关系保存在缓存中。之后接收到具有与所述第二任务相同特征值的任务时,例如所述第一任务,可以不用处理,而通过从缓存中调用所述处理结果作为所述具有与所述第二任务相同特征值的任务的处理结果。
读取单元305,用于取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。
举例说明,由于具有与所述第一任务的相同特征值的所述第二任务已经被处理完成,得到处理结果。故所述读取单元305可以将把处于等待状态的所述第一任务唤醒,不对所述第一任务进行处理,而是读取所述第二任务的处理结果作为所述第一任务的处理结果。
需要注意的是,根据开始处理所述第二任务的时间与接收到所述第一任务的时间之差的不同,所述第一任务处于等待状态的时间也会有所不同。举例说明,例如处理所述第二任务的处理时间为3秒,当开始处理所述第二任务后的2.5秒接收到所述第一任务,正常情况下,所述第一任务只需处于等待状态3-2.5=0.5秒后即可通过所述读取单元305从缓存中读取所述第二任务的处理结果。
由上述实施例可以看出,当通过接收到的第一任务的特征值没有查找到所述特征值与处理结果的对应关系时,会在处理所述第一任务之前判断是否有具有相同特征值的第二任务正在被处理中,如果有,则不会对所述第一任务进行处理,将所述第一任务设置为等待状态等待所述第二任务的处理结果,这样使得计算机系统不会出现同时对多个具有相同特征值的任务进行处理的重复计算情况,提高了计算机系统的处理效率。
可选的,若所述第一判断单元302的所述判断结果为否,可以理解为当前没有处理具有与所述第一任务相同特征值的任务,例如所述第二任务。那么,为了之后在接收具有到与所述第一任务相同特征值的任务时可以直接从缓存中读取处理结果,在图3所对应实施例的基础上,如图4所示,图4为本发明实施例提供的一种数据处理装置的装置结构图,所述装置还可以进一步包括第二处理单元401。
若所述第一判断单元302的所述判断结果为否,触发所述第二处理单元401,所述第二处理单元401,用于通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
举例说明,当所述第二处理单元401获得所述第一任务的处理结果,由于当前缓存中并没有存储所述第一任务对应的处理结果,故可以将所述处理结果以及所述处理结果和所述特征值之间的对应关系保存在缓存中。之后接收到具有与所述第一任务相同特征值的任务时,可以不用处理,而通过从缓存中调用所述处理结果作为所述具有与所述第一任务相同特征值的任务的处理结果。
可选的,由于所述第二处理单元401在处理所述第一任务的过程中,可能会接收到具有与所述第一任务相同特征值的任务,由于正在处理所述第一任务,故会将所述接收到具有与所述第一任务相同特征值的任务设置为等待状态。在图3所对应实施例的基础上,如图5所示,图5为本发明实施例提供的一种数据处理装置的装置结构图,所述装置还可以进一步包括第二判断单元501。
在触发所述第二处理单元401后,所述第二判断单元501,用于判断是否有第三任务处于等待状态,所述第三任务的特征值与所述第一任务的特征值相同。
举例说明,所述第三任务可以理解为所述接收单元301在接收到所述第一任务并对其进行处理时所接收到的任务,由于接收到所述第三任务时正在处理所述第一任务,故可以通过所述第二判断单元501以将所述第一任务设置为等待状态的方式,将所述第三任务设置为所述等待状态。
若所述第二判断单元501的判断结果为是,触发所述读取单元305,所述读取单元305还用于取消所述第三任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第三任务的处理结果。
举例说明,当所述第二判断单元501确定有处于等待状态的所述第三任务时,由于此时具有与所述第三任务的相同特征值的所述第一任务已经被处理完成,得到处理结果。故所述读取单元305可以将把处于等待状态的所述第三任务唤醒,不对所述第三任务进行处理,而是读取所述第一任务的处理结果作为所述第三任务的处理结果。提高了处理效率。
可选的,在处理任务时,因为各种情况,可能会出现任务无法得到处理结果,或者处理时间远大于正常处理时间的情况。若所述第一任务被设置为等待状态,出现上述长时间得不到所述第二任务的处理结果的情况时,如果让所述第一任务一直处于等待状态而不进行处理,会占用大量系统资源,并造成系统拥堵,反而降低了系统处理效率,导致不好的用户体验。为了解决这种情况,请参阅图4:
所述设置子单元303,还用于为所述第一任务设置预设等待时间。
举例说明,所述预设等待时间可以设置为任意时间,不过为了提高处理效率,所述预设等待时间可以设置为所述计算机系统处理具有与所述第一任务相同特征值的任务的平均处理时间或最大处理时间。例如计算机系统处理所述具有与所述第一任务相同特征值的任务一般需要或最大需要耗时三秒,则可以将所述预设等待时间设置为三秒。
当所述第一任务处于等待状态的时间超过所述预设等待时间时,触发所述第二处理单元401,所述第二处理单元401还用于取消所述第一任务的等待状态,对所述第一任务进行处理。
举例说明,通过设置预设等待时间,可以在出现所述第二任务无法得到处理结果,或者所述第二任务的处理时间远大于正常处理时间的情况时,防止所述第一任务长时间处于等待状态,不会占用计算机系统大量资源。并在所述第一任务处于所述等待状态的时间超出所述预设等待时间时,对所述第一任务进行处理,使得即使所述计算机系统在正常处理时间内无法得到所述第二任务的处理结果,也可以通过对所述第一任务的处理得到处理结果,由此进一步的降低了计算机系统的出错率。
本发明实施例中提到的第一任务中的“第一”只是用来做名字标识,并不代表顺序上的第一。该规则同样适用于“第二”和“第三”。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备)执行本发明各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本发明的优选实施方式,并非用于限定本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种数据处理方法,其特征在于,应用于计算机系统,所述计算机系统处理具有相同特征值的任务获得相同的处理结果,包括:
所述计算机系统接收到第一任务,所述第一任务具有对应的特征值;
所述计算机系统在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,所述第二任务对应的特征值与所述第一任务对应的特征值相同;
若判断结果为是,所述计算机系统不处理所述第一任务,将所述第一任务设置为等待状态;
所述计算机系统通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果;
所述计算机系统取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。
2.根据权利要求1所述的方法,其特征在于,还包括:
若所述判断结果为否,所述计算机系统通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
3.根据权利要求2所述的方法,其特征在于,在所述计算机系统通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果后,还包括:
所述计算机系统判断是否有第三任务处于等待状态,所述第三任务的特征值与所述第一任务的特征值相同;
若判断结果为是,所述计算机系统取消所述第三任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第三任务的处理结果。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述若判断结果为有,所述计算机系统不处理所述第一任务,将所述第一任务设置为等待状态,还包括:
所述计算机系统为所述第一任务设置预设等待时间;
当所述第一任务处于等待状态的时间超过所述预设等待时间时,所述计算机系统取消所述第一任务的等待状态,对所述第一任务进行处理。
5.根据权利要求4所述的方法,其特征在于,
所述预设等待时间为所述计算机系统处理具有与所述第一任务相同特征值的任务的平均处理时间或最大处理时间。
6.一种数据处理装置,其特征在于,应用于计算机系统,所述计算机系统处理具有相同特征值的任务获得相同的处理结果,包括:
接收单元,用于接收到第一任务,所述第一任务具有对应的特征值;
第一判断单元,用于在根据所述特征值没有查找到所述特征值与处理结果的对应关系时,判断当前是否有第二任务正在被处理,所述第二任务对应的特征值与所述第一任务对应的特征值相同;
若所述第一判断单元的判断结果为是,触发设置单元,所述设置单元不处理所述第一任务,将所述第一任务设置为等待状态;
第一处理单元,用于通过处理获得所述第二任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果;
读取单元,用于取消所述第一任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第一任务的处理结果。
7.根据权利要求6所述的装置,其特征在于,还包括:
若所述第一判断单元的所述判断结果为否,触发第二处理单元,所述第二处理单元,用于通过处理获得所述第一任务的处理结果,在缓存中保存所述特征值和所述处理结果的对应关系和所述处理结果。
8.根据权利要求7所述的装置,其特征在于,在触发所述第二处理单元后,还包括:
第二判断单元,用于判断是否有第三任务处于等待状态,所述第三任务的特征值与所述第一任务的特征值相同;
若所述第二判断单元的判断结果为是,触发所述读取单元,所述读取单元还用于取消所述第三任务的等待状态,并返回从缓存中读取的所述处理结果作为所述第三任务的处理结果。
9.根据权利要求6至8任一项所述的装置,其特征在于,
所述设置单元,还用于为所述第一任务设置预设等待时间;
当所述第一任务处于等待状态的时间超过所述预设等待时间时,触发所述第二处理单元,所述第二处理单元还用于取消所述第一任务的等待状态,对所述第一任务进行处理。
10.根据权利要求9所述的装置,其特征在于,
所述预设等待时间为所述计算机系统处理具有与所述第一任务相同特征值的任务的平均处理时间或最大处理时间。
CN201410697071.1A 2014-11-26 2014-11-26 一种数据处理方法和装置 Pending CN105630583A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410697071.1A CN105630583A (zh) 2014-11-26 2014-11-26 一种数据处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410697071.1A CN105630583A (zh) 2014-11-26 2014-11-26 一种数据处理方法和装置

Publications (1)

Publication Number Publication Date
CN105630583A true CN105630583A (zh) 2016-06-01

Family

ID=56045562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410697071.1A Pending CN105630583A (zh) 2014-11-26 2014-11-26 一种数据处理方法和装置

Country Status (1)

Country Link
CN (1) CN105630583A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107066237A (zh) * 2017-04-17 2017-08-18 东软集团股份有限公司 一种数据处理方法及装置
CN107392762A (zh) * 2017-04-14 2017-11-24 阿里巴巴集团控股有限公司 清算文件处理的方法、装置及设备
CN111104168A (zh) * 2018-10-25 2020-05-05 杭州嘉楠耘智信息科技有限公司 一种计算结果提交方法及装置
CN115484343A (zh) * 2022-09-08 2022-12-16 上海术理智能科技有限公司 基于微信小程序防止安卓手机与蓝牙设备数据传输丢失的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230636A1 (en) * 2002-12-19 2004-11-18 Fujitsu Limited Task computing
US20090254913A1 (en) * 2005-08-22 2009-10-08 Ns Solutions Corporation Information Processing System
CN101882161A (zh) * 2010-06-23 2010-11-10 中国工商银行股份有限公司 应用级异步任务调度系统和方法
CN102004665A (zh) * 2010-11-09 2011-04-06 北京神州泰岳软件股份有限公司 工作流系统中任务并发处理方法
CN102929698A (zh) * 2012-09-29 2013-02-13 北京百度网讯科技有限公司 一种任务判重方法及系统
CN103902646A (zh) * 2013-12-27 2014-07-02 北京天融信软件有限公司 一种分布式任务管理系统与方法
CN103984544A (zh) * 2014-04-24 2014-08-13 浪潮电子信息产业股份有限公司 一种避免任务同时执行的方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230636A1 (en) * 2002-12-19 2004-11-18 Fujitsu Limited Task computing
US20090254913A1 (en) * 2005-08-22 2009-10-08 Ns Solutions Corporation Information Processing System
CN101882161A (zh) * 2010-06-23 2010-11-10 中国工商银行股份有限公司 应用级异步任务调度系统和方法
CN102004665A (zh) * 2010-11-09 2011-04-06 北京神州泰岳软件股份有限公司 工作流系统中任务并发处理方法
CN102929698A (zh) * 2012-09-29 2013-02-13 北京百度网讯科技有限公司 一种任务判重方法及系统
CN103902646A (zh) * 2013-12-27 2014-07-02 北京天融信软件有限公司 一种分布式任务管理系统与方法
CN103984544A (zh) * 2014-04-24 2014-08-13 浪潮电子信息产业股份有限公司 一种避免任务同时执行的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107392762A (zh) * 2017-04-14 2017-11-24 阿里巴巴集团控股有限公司 清算文件处理的方法、装置及设备
CN107066237A (zh) * 2017-04-17 2017-08-18 东软集团股份有限公司 一种数据处理方法及装置
CN107066237B (zh) * 2017-04-17 2020-04-03 东软集团股份有限公司 一种数据处理方法及装置
CN111104168A (zh) * 2018-10-25 2020-05-05 杭州嘉楠耘智信息科技有限公司 一种计算结果提交方法及装置
CN115484343A (zh) * 2022-09-08 2022-12-16 上海术理智能科技有限公司 基于微信小程序防止安卓手机与蓝牙设备数据传输丢失的方法

Similar Documents

Publication Publication Date Title
CN108694087A (zh) 用于最优系统级性能的网络接口卡中的动态负载均衡
EP2926250B1 (en) Methods for packet scheduling with order in software-based parallel processing
CN105630583A (zh) 一种数据处理方法和装置
US9225651B2 (en) Method and apparatus for load balancing
CN105117289A (zh) 基于云测试平台的任务分配方法、装置及系统
CN111045810B (zh) 一种任务调度处理方法及装置
CN106534287B (zh) 一种会话表项的管理方法和装置
CN105279017A (zh) 基于云测试平台的任务分配方法、装置及系统
US10002075B1 (en) Managing memory resources in a network environment in order to handle querying of logical data structures
US8248937B2 (en) Packet forwarding device and load balance method thereof
CN103839007A (zh) 一种检测异常线程的方法及系统
CN102385536A (zh) 一种实现并行计算的方法及系统
CN104536780B (zh) 一种电子游戏资源高效加载方法及系统
CN107835095A (zh) 一种日志的处理方法及装置
US20220070054A1 (en) Failure Processing Method and Apparatus, and Storage Medium
CN108429703B (zh) Dhcp客户端上线方法及装置
CN111861298A (zh) 一种订单取消的方法和装置
CN112152872B (zh) 一种网络亚健康检测方法及装置
US9894012B2 (en) Method and system to improve network connection locality on multicore systems
US9954971B1 (en) Cache eviction in a distributed computing system
CN106506640A (zh) 一种snmp请求的处理方法及装置
CN105740028A (zh) 一种访问控制方法及装置
CN111324438B (zh) 请求的调度方法、装置、存储介质及电子设备
EP3136251B1 (en) Flit transmission method and device of network on chip
CN103366014A (zh) 基于集群的云计算网络数据处理系统及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160601

RJ01 Rejection of invention patent application after publication