CN104932936A - 数据处理方法与系统 - Google Patents
数据处理方法与系统 Download PDFInfo
- Publication number
- CN104932936A CN104932936A CN201510307441.0A CN201510307441A CN104932936A CN 104932936 A CN104932936 A CN 104932936A CN 201510307441 A CN201510307441 A CN 201510307441A CN 104932936 A CN104932936 A CN 104932936A
- Authority
- CN
- China
- Prior art keywords
- grades
- thread
- threads
- grade
- data
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据处理方法和系统,其中,所述方法应用于设置有多级线程的服务器,所述多级线程包括2级线程和3级线程,其中,所述2级线程为所述3级线程的上层线程;所述方法包括:在通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。本发明缓解了服务器端的处理任务压力,降低了服务器端的资源占用率,提高了数据处理效率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种数据处理方法与系统。
背景技术
在设置于客户端的应用程序与服务器端的应用程序之间进行数据交互的计算机网络环境下,服务器端还设置有与客户端的应用程序进行交互的应用逻辑。
通常,服务器端的应用程序与应用逻辑为一体设置。并且,服务器端的应用逻辑按照串行的顺序处理客户端的应用程序发送来的数据,并按照串行的顺序向服务器端的应用程序返回处理后的数据。在客户端的应用程序与服务器端的应用程序之间需要交互的数据量巨大时,现有的应用逻辑处理方式会造成处理任务积压,服务器资源占用率高,数据处理效率低下的问题。
发明内容
鉴于上述现有的数据处理方法会造成处理任务积压,服务器资源占用率高,数据处理效率低下的问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据处理方法与系统。
依据本发明的一个方面,提供了一种数据处理方法,其中,所述方法应用于设置有多级线程的服务器,所述多级线程包括2级线程和3级线程,其中,所述2级线程为所述3级线程的上层线程;所述方法包括:
在通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
根据本发明的另一方面,提供了一种数据处理系统,其中,所述系统应用于设置有多级线程的服务器,所述多级线程包括2级线程和3级线程,其中,所述2级线程为所述3级线程的上层线程;所述系统包括:
2级处理模块,用于通过多个所述2级线程处理来自客户端的数据,得到处理结果;
3级处理模块,用于在所述2级处理模块通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
现有的数据处理方案中,在客户端的应用程序与服务器端的应用程序之间需要交互的数据量巨大时,现有的应用逻辑处理方式会造成处理任务积压,服务器资源占用率高,数据处理效率低下的问题。而根据本发明的数据处理方案,在服务器端设置多级线程,多级线程包括2级线程和3级线程,其中,2级线程为3级线程的上层线程,并且,2级线程可以与3级线程并行执行各自的任务,在通过多个2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个2级线程并行的多个3级线程加载逻辑脚本对2级线程处理后的处理结果进行处理。通过本发明,缓解了服务器端的处理任务压力,降低了服务器端的资源占用率,提高了数据处理效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是根据本发明实施例一的一种数据处理方法的步骤流程图;
图2是根据本发明实施例二的一种数据处理方法的步骤流程图;
图3是根据本发明实施例三的一种数据处理系统的结构框图;
图4是根据本发明实施例四的一种数据处理系统的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
详细介绍本发明实施例提供的一种数据处理方法。
所述方法应用于设置有多级线程的服务器,所述多级线程可以包括2级线程和3级线程,其中,所述2级线程可以为所述3级线程的上层线程,即针对来自一个客户端的数据,先由2级线程进行处理,得到处理结果后,再由3级线程对处理结果进行处理。或者,在一个整体的处理流程中,2级线程先处理,3级线程后处理。
优选地,所述2级线程和所述3级线程也可以并行处理各自的数据,即2级线程对某数据进行处理的同时,3级线程可以对另外的数据进行处理,相互之间互不干扰。
参照图1,示出了本发明实施例一提供的一种数据处理方法的步骤流程图。
步骤100,通过多个所述2级线程处理来自客户端的数据,得到处理结果。
可以通过多个所述2级线程处理来自多个客户的数据,例如,来自客户端的数据为经过加密的数据,则可以通过所述2级线程对加密的数据进行解密操作,得到解密后的数据;又例如,来自客户端的数据为经过压缩的数据,则可以通过所述2级线程对压缩的数据进行解压操作,得到解压后的数据。
步骤102,在通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
在通过所述2级线程处理数据的同时,还可以通过多个与2级线程并行的3级线程加载逻辑脚本对2级线程处理后得到的数据,进行处理。也就是说,2级线程处理后得到的数据会继续由3级线程进行处理,并且,2级线程和3级线程可以并行处理各自需要处理的数据。例如,2级线程对A数据进行处理,得到A数据结果,3级线程对A数据结果进行处理。在2级线程对A数据进行处理的同时,3级线程可以对B数据结果进行处理,B数据结果可以为之前2级线程对B数据进行处理得到。
综上所述,本发明实施例在服务器端设置多级线程,多级线程包括2级线程和3级线程,其中,2级线程为3级线程的上层线程,并且,2级线程可以与3级线程并行执行各自的任务,在通过多个2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个2级线程并行的多个3级线程加载逻辑脚本对2级线程处理后的处理结果进行处理。通过本发明实施例中的技术方案,缓解了服务器端的处理任务压力,降低了服务器端的资源占用率,提高了数据处理效率。
实施例二
详细介绍本发明实施例提供的一种数据处理方法。
所述方法可以应用于设置有多级线程的服务器,所述多级线程可以包括0级线程、1级线程、2级线程和3级线程,其中,所述0级线程为所述1级线程的上层线程,所述1级线程为所述2级线程的上层线程,所述2级线程可以为所述3级线程的上层线程。
优选地,所述2级线程和所述3级线程也可以并行处理各自的数据,即2级线程对某数据进行处理的同时,3级线程可以对另外的数据进行处理,相互之间互不干扰。
参照图2,示出了本发明实施例二提供的一种数据处理方法的步骤流程图。
步骤200,通过至少一个所述1级线程进行客户端的网络连接的服务监听。
优选地,所述步骤200可以为:
通过至少一个所述1级线程中设置的多个网络连接服务进行客户端的网络连接的服务监听。
多个网络连接服务可以分布于单个或者多个1级线程中。
步骤202,通过多个所述2级线程处理来自客户端的数据,得到处理结果。
可以通过多个所述2级线程处理来自多个客户的数据,例如,来自客户端的数据为经过加密的数据,则可以通过所述2级线程对加密的数据进行解密操作,得到解密后的数据;又例如,来自客户端的数据为经过压缩的数据,则可以通过所述2级线程对压缩的数据进行解压操作,得到解压后的数据。
通过所述2级线程还可以执行客户端连接承载,例如,传输控制协议(Transmission Control Protocol,TCP)或一种拥塞控制协议(Scalable TCP,SCTP)。
优选地,所述步骤202可以为:
通过多个所述2级线程对来自客户端的数据进行Bare和/或编码解码和/或检测,得到处理结果。
优选地,多个所述2级线程的数量可以为当前逻辑核心数量的2倍。
为充分利用硬件资源(线程不跨中央处理器逻辑核心),2级线程的数量会一定规模地大于当前逻辑核心数量。越耗时的任务,并发度越大,线程数越多。其中,逻辑核心为中央处理器的物理核心,经过超线程之后得到的核心。
步骤204,通过多个所述2级线程将得到的每个处理结果存放在一个任务队列中。
所述2级线程每处理完一个数据,得到数据结果之后,将数据结果存放在一个特殊的任务队列中,等待3级线程进行处理。
优选地,本发明实施例还可以包括:
步骤21,通过预置数量的所述2级线程管理所有客户端的网络连接。
也就是说,所有的客户端连接分布于固定个数的2级线程中。
步骤206,在通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
在通过所述2级线程处理数据的同时,还可以通过多个与2级线程并行的3级线程加载逻辑脚本对2级线程处理后得到的数据,进行处理。也就是说,2级线程处理后得到的数据会继续由3级线程进行处理,并且,2级线程和3级线程可以并行处理各自需要处理的数据。例如,2级线程对A数据进行处理,得到A数据结果,3级线程对A数据结果进行处理。在2级线程对A数据进行处理的同时,3级线程可以对B数据结果进行处理,B数据结果可以为之前2级线程对B数据进行处理得到。
优选地,所述步骤206可以为:
通过闲置的与多个所述2级线程并行的所述3级线程加载逻辑脚本对所述存放在任务队列中的所述处理结果进行处理。
优选地,多个所述3级线程的数量可以为所述当前逻辑核心数量的4倍。
每个3级线程有一个LUA state(LUA为一种脚本语言,LUA state为LUA的一种结构体),每个3级线程相互独立,而不是从一个LUA state派生出的栈。所以每个3级线程需要独立地加载逻辑脚本,整个全局区也是独立的。所以LUA state之间的数据共享,需要服务提供特殊的接口。由于LUA的单线程属性,才做这样的处理。同时也可以确保垃圾回收的稳定性,在一个LUA state崩溃时,不影响其它3级线程,只要单独重启这个就可以。3级线程不绑定客户端连接,也不会造成掉线
优选地,本发明实施例还可以通过一个所述0级线程对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行管理,具体地,通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行周期性管理。
优选地,可以通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行回收和/或阻塞。
需要说明的是,本发明实施例中的服务器可以为游戏服务器,游戏服务器中设置的多级线程可以用于并行处理与游戏客户端相关联的游戏逻辑的一系列任务和数据。当连接游戏服务器的游戏客户端数量巨大时,针对游戏客户端的不同任务或者数据,利用游戏服务器中的多级线程并行处理,提高了游戏服务器处理游戏客户端的任务或数据的效率。
综上所述,本发明实施例在服务器端设置多级线程,多级线程包括2级线程和3级线程,其中,2级线程为3级线程的上层线程,并且,2级线程可以与3级线程并行执行各自的任务,在通过多个2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个2级线程并行的多个3级线程加载逻辑脚本对2级线程处理后的处理结果进行处理。通过本发明实施例中的技术方案,缓解了服务器端的处理任务压力,降低了服务器端的资源占用率,提高了数据处理效率。
实施例三
详细介绍本发明实施例提供的一种数据处理系统。
所述系统可以应用于设置有多级线程的服务器,所述多级线程可以包括2级线程和3级线程,其中,所述2级线程可以为所述3级线程的上层线程。
参照图3,示出了本发明实施例三提供的一种数据处理系统的结构框图。
所述系统可以包括:2级处理模块300,3级处理模块302。
下面分别详细介绍各模块的功能以及各模块之间的关系。
2级处理模块300,用于通过多个所述2级线程处理来自客户端的数据,得到处理结果。
3级处理模块302,用于在所述2级处理模块300通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
综上所述,本发明实施例在服务器端设置多级线程,多级线程包括2级线程和3级线程,其中,2级线程为3级线程的上层线程,并且,2级线程可以与3级线程并行执行各自的任务,在通过多个2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个2级线程并行的多个3级线程加载逻辑脚本对2级线程处理后的处理结果进行处理。通过本发明实施例中的技术方案,缓解了服务器端的处理任务压力,降低了服务器端的资源占用率,提高了数据处理效率。
实施例四
详细介绍本发明实施例提供的一种数据处理系统。
所述系统可以应用于设置有多级线程的服务器,所述多级线程可以包括0级线程、1级线程、2级线程和3级线程,其中,所述0级线程可以为所述1级线程的上层线程,所述1级线程可以为所述2级线程的上层线程,所述2级线程可以为所述3级线程的上层线程。
参照图4,示出了本发明实施例四提供的一种数据处理系统的结构框图。
所述系统可以包括:0级处理模块400,1级处理模块402,2级处理模块404,结果存放模块406,3级处理模块408,网络连接管理模块410。
下面分别详细介绍各模块的功能以及各模块之间的关系。
所述0级处理模块400,用于通过一个所述0级线程对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行管理。具体地,所述0级处理模块400可以通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行周期性管理。
优选地,所述0级处理模块400可以通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行回收和/或阻塞。
所述1级处理模块402,用于在所述2级处理模块404通过多个所述2级线程处理来自客户端的数据,得到处理结果之前,通过至少一个所述1级线程进行客户端的网络连接的服务监听。
优选地,所述1级处理模块402通过至少一个所述1级线程中设置的多个网络连接服务进行客户端的网络连接的服务监听。
所述2级处理模块404,用于通过多个所述2级线程处理来自客户端的数据,得到处理结果。
优选地,所述2级处理模块404可以通过多个所述2级线程对来自客户端的数据进行Bare和/或编码解码和/或检测,得到处理结果。
优选地,多个所述2级线程的数量为当前逻辑核心数量的2倍。
所述网络连接管理模块410,用于通过预置数量的所述2级线程管理所有客户端的网络连接。
所述结果存放模块406,用于在所述2级处理模块404通过多个所述2级线程处理来自客户端的数据,得到处理结果之后,通过多个所述2级线程将得到的每个处理结果存放在一个任务队列中。
所述3级处理模块408,用于在所述2级处理模块404通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
优选地,所述3级处理模块408通过闲置的与多个所述2级线程并行的所述3级线程加载逻辑脚本对所述存放在任务队列中的所述处理结果进行处理。
优选地,多个所述3级线程的数量为所述当前逻辑核心数量的4倍。
综上所述,本发明实施例在服务器端设置多级线程,多级线程包括2级线程和3级线程,其中,2级线程为3级线程的上层线程,并且,2级线程可以与3级线程并行执行各自的任务,在通过多个2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个2级线程并行的多个3级线程加载逻辑脚本对2级线程处理后的处理结果进行处理。通过本发明实施例中的技术方案,缓解了服务器端的处理任务压力,降低了服务器端的资源占用率,提高了数据处理效率。
在此提供的数据处理方案不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造具有本发明方案的系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据处理方案中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种数据处理方法,其中,所述方法应用于设置有多级线程的服务器,所述多级线程包括2级线程和3级线程,其中,所述2级线程为所述3级线程的上层线程;所述方法包括:
在通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
A2、根据A1所述的方法,其中,所述多级线程还包括1级线程,所述1级线程为所述2级线程的上层线程;所述通过多个所述2级线程处理来自客户端的数据,得到处理结果之前,所述方法还包括:
通过至少一个所述1级线程进行客户端的网络连接的服务监听。
A3、根据A2所述的方法,其中,所述通过至少一个所述1级线程进行客户端的网络连接的服务监听,包括:
通过至少一个所述1级线程中设置的多个网络连接服务进行客户端的网络连接的服务监听。
A4、根据A2所述的方法,其中,所述多级线程还包括0级线程,所述0级线程为所述1级线程的上层线程;所述方法还包括:
通过一个所述0级线程对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行管理。
A5、根据A4所述的方法,其中,所述通过一个所述0级线程对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行管理,包括:
通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行周期性管理。
A6、根据A5所述的方法,其中,所述通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行周期性管理,包括:
通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行回收和/或阻塞。
A7、根据A1所述的方法,其中,所述通过多个所述2级线程处理来自客户端的数据,得到处理结果,包括:
通过多个所述2级线程对来自客户端的数据进行Bare和/或编码解码和/或检测,得到处理结果。
A8、根据A1所述的方法,其中,所述方法还包括:
通过预置数量的所述2级线程管理所有客户端的网络连接。
A9、根据A1所述的方法,其中,多个所述2级线程的数量为当前逻辑核心数量的2倍。
A10、根据A1所述的方法,其中,所述通过多个所述2级线程处理来自客户端的数据,得到处理结果之后,所述方法还包括:
通过多个所述2级线程将得到的每个处理结果存放在一个任务队列中。
A11、根据A10所述的方法,其中,所述通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理,包括:
通过闲置的与多个所述2级线程并行的所述3级线程加载逻辑脚本对所述存放在任务队列中的所述处理结果进行处理。
A12、根据A9所述的方法,其中,多个所述3级线程的数量为所述当前逻辑核心数量的4倍。
相应地,本发明还公开了B13、一种数据处理系统,其中,所述系统应用于设置有多级线程的服务器,所述多级线程包括2级线程和3级线程,其中,所述2级线程为所述3级线程的上层线程;所述系统包括:
2级处理模块,用于通过多个所述2级线程处理来自客户端的数据,得到处理结果;
3级处理模块,用于在所述2级处理模块通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
B14、根据B13所述的系统,其中,所述多级线程还包括1级线程,所述1级线程为所述2级线程的上层线程;所述系统还包括:
1级处理模块,用于在所述2级处理模块通过多个所述2级线程处理来自客户端的数据,得到处理结果之前,通过至少一个所述1级线程进行客户端的网络连接的服务监听。
B15、根据B14所述的系统,其中,所述1级处理模块通过至少一个所述1级线程中设置的多个网络连接服务进行客户端的网络连接的服务监听。
B16、根据B14所述的系统,其中,所述多级线程还包括0级线程,所述0级线程为所述1级线程的上层线程;所述系统还包括:
0级处理模块,用于通过一个所述0级线程对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行管理。
B17、根据B16所述的系统,其中,所述0级处理模块通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行周期性管理。
B18、根据B17所述的系统,其中,所述0级处理模块通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行回收和/或阻塞。
B19、根据B13所述的系统,其中,所述2级处理模块通过多个所述2级线程对来自客户端的数据进行Bare和/或编码解码和/或检测,得到处理结果。
B20、根据B13所述的系统,其中,所述系统还包括:
网络连接管理模块,用于通过预置数量的所述2级线程管理所有客户端的网络连接。
B21、根据B13所述的系统,其中,多个所述2级线程的数量为当前逻辑核心数量的2倍。
B22、根据B13所述的系统,其中,所述系统还包括:
结果存放模块,用于在所述2级处理模块通过多个所述2级线程处理来自客户端的数据,得到处理结果之后,通过多个所述2级线程将得到的每个处理结果存放在一个任务队列中。
B23、根据B22所述的系统,其中,所述3级处理模块通过闲置的与多个所述2级线程并行的所述3级线程加载逻辑脚本对所述存放在任务队列中的所述处理结果进行处理。
B24、根据B21所述的系统,其中,多个所述3级线程的数量为所述当前逻辑核心数量的4倍。
Claims (10)
1.一种数据处理方法,其中,所述方法应用于设置有多级线程的服务器,所述多级线程包括2级线程和3级线程,其中,所述2级线程为所述3级线程的上层线程;所述方法包括:
在通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
2.根据权利要求1所述的方法,其中,所述多级线程还包括1级线程,所述1级线程为所述2级线程的上层线程;所述通过多个所述2级线程处理来自客户端的数据,得到处理结果之前,所述方法还包括:
通过至少一个所述1级线程进行客户端的网络连接的服务监听。
3.根据权利要求2所述的方法,其中,所述通过至少一个所述1级线程进行客户端的网络连接的服务监听,包括:
通过至少一个所述1级线程中设置的多个网络连接服务进行客户端的网络连接的服务监听。
4.根据权利要求2所述的方法,其中,所述多级线程还包括0级线程,所述0级线程为所述1级线程的上层线程;所述方法还包括:
通过一个所述0级线程对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行管理。
5.根据权利要求4所述的方法,其中,所述通过一个所述0级线程对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行管理,包括:
通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行周期性管理。
6.根据权利要求5所述的方法,其中,所述通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行周期性管理,包括:
通过一个所述0级线程的预设时钟对至少一个所述1级线程、多个所述2级线程和多个所述3级线程中的至少一个线程进行回收和/或阻塞。
7.根据权利要求1所述的方法,其中,所述通过多个所述2级线程处理来自客户端的数据,得到处理结果,包括:
通过多个所述2级线程对来自客户端的数据进行Bare和/或编码解码和/或检测,得到处理结果。
8.根据权利要求1所述的方法,其中,所述方法还包括:
通过预置数量的所述2级线程管理所有客户端的网络连接。
9.根据权利要求1所述的方法,其中,多个所述2级线程的数量为当前逻辑核心数量的2倍。
10.一种数据处理系统,其中,所述系统应用于设置有多级线程的服务器,所述多级线程包括2级线程和3级线程,其中,所述2级线程为所述3级线程的上层线程;所述系统包括:
2级处理模块,用于通过多个所述2级线程处理来自客户端的数据,得到处理结果;
3级处理模块,用于在所述2级处理模块通过多个所述2级线程处理来自客户端的数据,得到处理结果的同时,通过与多个所述2级线程并行的多个所述3级线程加载逻辑脚本对所述处理结果进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510307441.0A CN104932936A (zh) | 2015-06-05 | 2015-06-05 | 数据处理方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510307441.0A CN104932936A (zh) | 2015-06-05 | 2015-06-05 | 数据处理方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104932936A true CN104932936A (zh) | 2015-09-23 |
Family
ID=54120111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510307441.0A Pending CN104932936A (zh) | 2015-06-05 | 2015-06-05 | 数据处理方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104932936A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562516A (zh) * | 2017-08-07 | 2018-01-09 | 北京金山安全管理系统技术有限公司 | 多线程处理方法和装置、存储介质及处理器 |
CN109766180A (zh) * | 2017-11-09 | 2019-05-17 | 阿里巴巴集团控股有限公司 | 负载均衡方法和装置、存储介质、计算设备及计算系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120266182A1 (en) * | 2011-04-15 | 2012-10-18 | Siemens Product Lifecycle Management Software Inc. | System and method for thread protected testing |
CN102929707A (zh) * | 2012-11-06 | 2013-02-13 | 无锡江南计算技术研究所 | 并行任务动态分配方法 |
CN103366471A (zh) * | 2013-06-26 | 2013-10-23 | 福建联迪商用设备有限公司 | 一种联机业务并发处理方法、系统及服务器 |
CN103744723A (zh) * | 2014-01-24 | 2014-04-23 | 深圳联友科技有限公司 | 一种线程池的管理方法和管理系统 |
-
2015
- 2015-06-05 CN CN201510307441.0A patent/CN104932936A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120266182A1 (en) * | 2011-04-15 | 2012-10-18 | Siemens Product Lifecycle Management Software Inc. | System and method for thread protected testing |
CN102929707A (zh) * | 2012-11-06 | 2013-02-13 | 无锡江南计算技术研究所 | 并行任务动态分配方法 |
CN103366471A (zh) * | 2013-06-26 | 2013-10-23 | 福建联迪商用设备有限公司 | 一种联机业务并发处理方法、系统及服务器 |
CN103744723A (zh) * | 2014-01-24 | 2014-04-23 | 深圳联友科技有限公司 | 一种线程池的管理方法和管理系统 |
Non-Patent Citations (1)
Title |
---|
张基温: "《计算机组成原理教程 第5版》", 31 July 2014 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562516A (zh) * | 2017-08-07 | 2018-01-09 | 北京金山安全管理系统技术有限公司 | 多线程处理方法和装置、存储介质及处理器 |
CN109766180A (zh) * | 2017-11-09 | 2019-05-17 | 阿里巴巴集团控股有限公司 | 负载均衡方法和装置、存储介质、计算设备及计算系统 |
CN109766180B (zh) * | 2017-11-09 | 2023-01-17 | 阿里巴巴集团控股有限公司 | 负载均衡方法和装置、存储介质、计算设备及计算系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109274731B (zh) | 基于多租户技术的web服务的部署、调用方法和装置 | |
US11245416B2 (en) | Parallel, block-based data encoding and decoding using multiple computational units | |
CN110928905B (zh) | 一种数据处理方法和装置 | |
CN105117289A (zh) | 基于云测试平台的任务分配方法、装置及系统 | |
CN104239133A (zh) | 一种日志处理方法、装置及服务器 | |
WO2014108768A1 (en) | Computing regression models | |
US20180095719A1 (en) | Sorted linked list with a midpoint binary tree | |
US10998918B2 (en) | Reducing the amount of data stored in a sequence of data blocks by combining deduplication and compression | |
CN102446100B (zh) | 用于数据类型的类型和长度抽象的系统和方法 | |
CN103595770A (zh) | Sdk实现文件下载的方法与装置 | |
CN108228799A (zh) | 对象索引信息的存储方法及装置 | |
CN105264488A (zh) | 使用数组对来合并有序列表 | |
CN113722055A (zh) | 数据处理方法、装置、电子设备和计算机可读介质 | |
CN111813758A (zh) | 数据库文件分布式分析方法、装置、服务器及存储介质 | |
CN104932936A (zh) | 数据处理方法与系统 | |
CN116760661A (zh) | 数据存储方法、装置、计算机设备、存储介质和程序产品 | |
CN103559204A (zh) | 处理数据库操作请求的方法、设备和系统 | |
US20150066988A1 (en) | Scalable parallel sorting on manycore-based computing systems | |
CN106095521A (zh) | 插件加载方法及装置 | |
JP6859407B2 (ja) | データ処理用の方法及び装置 | |
CN113626472A (zh) | 一种处理订单数据的方法和装置 | |
CN108984426B (zh) | 用于处理数据的方法和装置 | |
CN113590348A (zh) | 基于树状结构的参数传递方法、装置、设备及介质 | |
CN112416865A (zh) | 基于大数据的文件处理方法和装置 | |
CN107169098B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150923 |