客户端数据处理方法及装置的制造方法

文档序号:10724729阅读:595来源:国知局
客户端数据处理方法及装置的制造方法
【专利摘要】本发明公开了一种客户端数据处理方法,所述客户端数据处理方法包括以下步骤:所述IO层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;所述处理层对各个管道中的数据进行相应的处理。本发明还公开了一种客户端数据处理装置。本发明解决了服务器在处理客户端的请求时,由于读取请求及处理请求在同一个线程中进行,可能会导致代码逻辑上的混乱及数据处理效率降低的问题。
【专利说明】
客户端数据处理方法及装置
技术领域
[0001 ]本发明涉及数据处理技术领域,尤其涉及一种客户端数据处理方法及装置。
【背景技术】
[0002]大部分服务器是基于顺序迭代处理客户端请求,也就是等待客户端请求,再读取请求,处理请求,回复响应。但是在处理请求时,需要大量的Cpu时间,会造成对其它客户端响应的不及时,这就需要一种解决方式,常见的解决方式就是并发。具体来说,就是为每个客户端分配一个线程来处理,当有新的客户端请求进来时,为它创建一个线程,并需要为这个线程分配一个socket(通常也称作〃套接字〃)及port(端口)来进行1操作。然而,采用这种方式来进行1操作时,由于读取请求及处理请求在同一个线程中进行,当多个客户端同时进行请求时,可能会引起代码逻辑上的混乱,进而导致数据处理效率降低。
[0003]上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。

【发明内容】

[0004]本发明的主要目的在于提供一种客户端数据处理方法及装置,旨在解决服务器在处理客户端的请求时,由于读取请求及处理请求在同一个线程中进行,可能会导致代码逻辑上的混乱及数据处理效率降低的问题。
[0005]为实现上述目的,本发明提供的一种客户端数据处理方法,应用于服务器中,所述服务器包括1层、分发层及处理层,所述客户端数据处理方法包括以下步骤:
[0006]所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;
[0007]所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;
[0008]所述处理层对各个管道中的数据进行相应的处理。
[0009]可选地,所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中的步骤包括:
[0010]所述1层在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息;
[0011]所述1层将所述地址信息添加至接收到的所述数据的头部;
[0012]所述1层将包含有头部信息的所述数据存储于预设的缓冲区。
[0013]可选地,所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中的步骤包括:
[0014]所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的头部信息对提取到的所述数据进行分类;
[0015]所述分发层根据提取到的所述数据的类别建立对应的管道;
[0016]所述分发层将提取到的所述数据压入对应的管道中。
[0017]可选地,所述分发层将提取到的所述数据压入对应的管道中的步骤之前,还包括:
[0018]所述分发层将提取到的所述数据的头部信息移除。
[0019]可选地,所述处理层对各个管道中的数据进行相应的处理的步骤包括:
[0020]所述处理层为各个管道分配一个工作线程,以通过所述工作线程对管道中的数据进行相应的处理。
[0021]此外,为实现上述目的,本发明还提供一种客户端数据处理装置,所述客户端数据处理装置包括;
[0022]存储模块,用于在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;
[0023]压入模块,用于从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;
[0024]处理模块,用于对各个管道中的数据进行相应的处理。
[0025]可选地,所述存储模块包括:
[0026]获取单元,用于在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息;
[0027]添加单元,用于将所述地址信息添加至接收到的所述数据的头部;
[0028]存储单元,用于将包含有头部信息的所述数据存储于预设的缓冲区。
[0029]可选地,所述压入模块包括:
[0030]分类单元,用于从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的头部信息对提取到的所述数据进行分类;
[0031]建立单元,用于根据提取到的所述数据的类别建立对应的管道;
[0032]压入单元,用于将提取到的所述数据压入对应的管道中。
[0033]可选地,所述压入模块还包括:
[0034]移除单元,用于将提取到的所述数据的头部信息移除。
[0035]可选地,所述处理模块,还用于为各个管道分配一个工作线程,以通过所述工作线程对管道中的数据进行相应的处理。
[0036]本发明提出的客户端数据处理方法及装置,通过所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;所述处理层对各个管道中的数据进行相应的处理。采用多层处理的方式对客户端的请求进行处理,使得对客户端请求中的读取请求及处理请求不再同一层进行处理,避免了当接收到多个客户端的读取请求的代码与处理请求的代码由于在同一层中可能引起的代码逻辑上的混乱,同时通过多个层对客户端的数据进行处理,提高了对客户端数据处理的效率。
【附图说明】
[0037]图1为本发明客户端数据处理方法的第一实施例的流程示意图;
[0038]图2为本发明图1中的1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中的步骤细化流程示意图;
[0039]图3为图1中的分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中的步骤细化流程示意图;
[0040]图4为本发明图1中的分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中的另一步骤细化流程示意图;
[0041]图5为本发明客户端数据处理装置的第一实施例的功能模块示意图;
[0042]图6为本发明图5中的存储模块的细化功能模块示意图;
[0043]图7为本发明图5中的压入模块的细化功能模块示意图;
[0044]图8为本发明图5中的压入模块的另一细化功能模块示意图。
[0045]本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
【具体实施方式】
[0046]应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0047]基于上述问题,本发明提供一种客户端数据处理方法,应用于服务器中,所述服务器包括1层、分发层及处理层。
[0048]参照图1,图1为本发明客户端数据处理方法的第一实施例的流程示意图。
[0049]在本实施例中,所述客户端数据处理方法包括:
[0050]步骤S10,所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;
[0051]本发明提供的客户端数据处理方法,与现有的技术方案的区别在于采用分层处理的方式对客户端的数据进行处理,可以提高对客户端的数据的处理效率。具体的,本发明中的服务器逻辑上可以分为三层,分别为1层、分发层及处理层。所述1层是基于完成端口的,1完成端口是一种机制,通过这个机制,应用程序在启动时会首先创建一个线程池,然后该应用程序使用线程池处理异步I/O请求。这些线程被创建的唯一目的就是用于处理I/O请求。对于处理大量并发异步I/O请求的应用程序来说,相比于在I/O请求发生时创建线程来说,使用完成端口就可以做的更快且更有效率。由于所述1层是基于完成端口的,因此,所述1层在接收到各个客户端发送的数据时,即接收到各个客户端的I/O请求时,可以立刻采用该1层中的多个线程读取客户端发送的数据,每个线程读取一个客户端的I/O请求,在接收到客户端发送的数据后将该接收到的数据存储于预设的缓冲区。所述预设的缓冲区为所述1层的工作线程预先建立的管道缓冲区的末尾的存储区间。即每次1层在将接收到的数据存入管道中时,都是将数据存储于管道缓冲区中的剩余存储区间的最末尾的存储区间中。在本实施例中,所述1层只接收各个客户端发送的数据,而不对各个客户端发送的数据进行处理,即1层中的工作线程只对各个客户端的I/O请求进行读取,而不对各个客户端的请求进行处理。
[0052]步骤S20,所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;
[0053]所述分发层实时或当时查看管道中的预设存储区中是否存在数据,若所述管道中的预设缓冲区中存在数据,则所述分发层从该管道的预设存储区中读取存储的数据。具体的,所述分发层可以通过该层中的工作线程提取该管道预设缓冲区中的数据,在提取到数据后,确定提取到的数据的类别,即该提取到的数据是哪个客户端所发送的数据,在确定提取到的数据的类别后,将该数据压入对应的管道中。所述分发层可以根据提取到的数据的类别建立管道,同一个类别的数据压入相同的管道中,不同类别的数据压入不同数据类别相对应的管道中。所述分发层根据提取的数据每确定一个新的类别时,就新创建一个管道,以供该类别的数据能压入到对应的管道中。
[0054]步骤S30,所述处理层对各个管道中的数据进行相应的处理。
[0055]由于每个管道都对应着一个远程的客户端,因此,所述处理层可以对各个客户端发送的数据进行处理。
[0056]具体地,所述步骤S30包括:所述处理层为各个管道分配一个工作线程,以通过所述工作线程对管道中的数据进行相应的处理。
[0057]所述处理层为各个管道中分配一个工作线程,通过该工作线程对管道中的数据进行读取,存放,处理,及回应等操作。同时,由于各个管道中都分配了一个工作线程,故在对各个管道中的数据进行处理操作时的暂时中断不会影响其他客户端的数据的处理及回应。
[0058]本实施例通过所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;所述处理层对各个管道中的数据进行相应的处理。采用多层处理的方式对客户端的请求进行处理,使得对客户端请求中的读取请求及处理请求不再同一层进行处理,避免了当接收到多个客户端的读取请求的代码与处理请求的代码由于在同一层中可能引起的代码逻辑上的混乱,同时通过多个层对客户端的数据进行处理,提高了对客户端数据处理的效率。
[0059]进一步地,参照图2,图2为本发明客户端数据处理方法的第二实施例的流程示意图。基于上述客户端数据处理方法的第一实施例,所述步骤SlO包括:
[0060]步骤Sll,所述1层在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息;
[0061]步骤S12,所述1层将所述地址信息添加至接收到的所述数据的头部;
[0062]步骤S13,所述1层将包含有头部信息的所述数据存储于预设的缓冲区。
[0063]由于所述1层接收到各个客户端发送的数据中不包含地址信息,即接收到的数据中不包含发送该数据的客户端的地址信息,所述地址信息包括客户端的本地地址及端口号,例如,本地地址:192.168.1.99,端口号:2400。因此,为了对各个客户端发送的数据进行分类区别,需要在接收到各个客户端发送的数据时,获取发送该数据的客户端的地址信息,即获取发送该数据的客户端的本地地址及端口号,所述1层可以通过客户端与服务器进行通讯创建的套接字中获取发送所述数据的客户端的地址信息。所述1层在获取到发送所述数据的客户端的地址信息后,将所述地址信息添加至接收到的所述数据的头部,使得接收到的数据都包含有数据源的地址信息,从而为分发层对该接收到数据进行转发处理提高了必要的识别信息。1层在将地址信息添加至接收到的数据的头部后,将该包含有头部的所述数据存储于预设的缓冲区。
[0064]本实施例通过所述1层在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息,并将所述地址信息添加至接收到的所述数据的头部,从而为所述分发层对该接收到数据进行转发处理提高了必要的识别信息,使得所述分发层能够准确的将各个客户端发送的数据分发至各请求处理线程中。
[0065]进一步地,参照图3,图3为本发明客户端数据处理方法的第三实施例的流程示意图。基于上述客户端数据处理方法的第二实施例,所述步骤S20包括:
[0066]步骤S21,所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的头部信息对提取到的所述数据进行分类;
[0067]步骤S22,所述分发层根据提取到的所述数据的类别建立对应的管道;
[0068]步骤S23,所述分发层将提取到的所述数据压入对应的管道中。
[0069]所述分发层在从所述预设的缓冲区中提取到存储的数据后,对所述提取到的数据进行分类。具体的,所述分发层根据提取到的数据的头部信息进行分类,由于提取到的数据的头部信息为客户端的地址信息,故在对各个提取到的数据进行分类时,将头部信息一致的数据分为一类,头部信息不一致的数据分为不同的类别。在将提取到的数据进行分类后,所述分发层根据数据的类别建立对应的管道,每一类的数据建立一个管道,存在多少个类别的数据就建立多少个管道,例如提取到的数据总共存在8类,则需要建立8个管道。所述分发层在建立管道时,可以在没发现一个新类别的数据就建立一个新的管道,若确定该提取的数据是已有类别的数据,则不需要再建立管道。分发层在建立管道后,即可将各个类别的数据分别压入与其类别相对应的管道中。
[0070]本实施例通过为每类数据都建立一个对应的管道,使得对各个客户端数据的处理更加及时,准确,不会产生混乱。
[0071]进一步地,参照图4,图4为本发明客户端数据处理方法的第四实施例的流程示意图。基于上述客户端数据处理方法的第三实施例,所述步骤S23之前,还包括:
[0072]步骤S24,所述分发层将提取到的所述数据的头部信息移除。
[0073]所述分发层在根据提取到的数据的类别建立对应的管道之后,由于提取到的数据的头部信息为客户端的地址信息,该信息的作用仅为分发层根据该信息确定将提取到的数据压入到哪个管道中,故在确定提取到的数据需要压入的管道后,为了节省存储空间,则在将该提取到的数据压入管道之前,可以将该提取到的数据的头部信息移除,以便处理层对该数据进行处理。进一步地,所述分发层将提取到的所述数据的头部信息移除的步骤也可以由所述处理层执行,即当所述处理层对管道中的数据处理之前,首先将待处理数据的头部移除,然后再对该数据进行相应的处理。
[0074]本实施例通过在将提取到的数据压入对应的管道之前,将该数据的头部信息移除,从而节省存储空间。
[0075]本发明进一步提供一种客户端数据处理装置。
[0076]参照图5,图5为本发明客户端数据处理装置的第一实施例的功能模块示意图。
[0077]在本实施例中,所述客户端数据处理装置包括:存储模块10、压入模块20及处理模块30。
[0078]所述存储模块10,,用于在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;
[0079]本发明的技术方案与现有的技术方案的区别在于采用分层处理的方式对客户端的数据进行处理,可以提高对客户端的数据的处理效率。具体的,本发明中的服务器逻辑上可以分为三层,分别为1层、分发层及处理层。所述1层是基于完成端口的,1完成端口是一种机制,通过这个机制,应用程序在启动时会首先创建一个线程池,然后该应用程序使用线程池处理异步I/O请求。这些线程被创建的唯一目的就是用于处理I/O请求。对于处理大量并发异步I/o请求的应用程序来说,相比于在I/O请求发生时创建线程来说,使用完成端口就可以做的更快且更有效率。由于所述1层是基于完成端口的,因此,所述1层在接收到各个客户端发送的数据时,即接收到各个客户端的I/o请求时,可以立刻采用该1层中的多个线程读取客户端发送的数据,每个线程读取一个客户端的I/o请求,在接收到客户端发送的数据后将该接收到的数据存储于预设的缓冲区。所述预设的缓冲区为所述1层的工作线程预先建立的管道缓冲区的末尾的存储区间。即每次1层在将接收到的数据存入管道中时,都是将数据存储于管道缓冲区中的剩余存储区间的最末尾的存储区间中。在本实施例中,所述1层只接收各个客户端发送的数据,而不对各个客户端发送的数据进行处理,SP1层中的工作线程只对各个客户端的I/o请求进行读取,而不对各个客户端的请求进行处理。
[0080]所述压入模块20,用于从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;
[0081]所述分发层实时或当时查看管道中的预设存储区中是否存在数据,若所述管道中的预设缓冲区中存在数据,则所述分发层从该管道的预设存储区中读取存储的数据。具体的,所述分发层可以通过该层中的工作线程提取该管道预设缓冲区中的数据,在提取到数据后,确定提取到的数据的类别,即该提取到的数据是哪个客户端所发送的数据,在确定提取到的数据的类别后,将该数据压入对应的管道中。所述分发层可以根据提取到的数据的类别建立管道,同一个类别的数据压入相同的管道中,不同类别的数据压入不同数据类别相对应的管道中。所述分发层根据提取的数据每确定一个新的类别时,就新创建一个管道,以供该类别的数据能压入到对应的管道中。
[0082]所述处理模块30,用于对各个管道中的数据进行相应的处理。
[0083]由于每个管道都对应着一个远程的客户端,因此,所述处理层可以对各个客户端发送的数据进行处理。
[0084]具体地,所述处理模块30,还用于为各个管道分配一个工作线程,以通过所述工作线程对管道中的数据进行相应的处理。
[0085]所述处理层为各个管道中分配一个工作线程,通过该工作线程对管道中的数据进行读取,存放,处理,及回应等操作。同时,由于各个管道中都分配了一个工作线程,故在对各个管道中的数据进行处理操作时的暂时中断不会影响其他客户端的数据的处理及回应。
[0086]本实施例通过所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中;所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中;所述处理层对各个管道中的数据进行相应的处理。采用多层处理的方式对客户端的请求进行处理,使得对客户端请求中的读取请求及处理请求不再同一层进行处理,避免了当接收到多个客户端的读取请求的代码与处理请求的代码由于在同一层中可能引起的代码逻辑上的混乱,同时通过多个层对客户端的数据进行处理,提高了对客户端数据处理的效率。
[0087]进一步地,参照图6,图6为本发明客户端数据处理装置的第二实施例的功能模块示意图。基于上述客户端数据处理装置的第一实施例,所述存储模块10包括:获取单元11、添加单元12及存储单元13。
[0088]所述获取单元11,用于在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息;
[0089]所述添加单元12,用于将所述地址信息添加至接收到的所述数据的头部;
[0090]所述存储单元13,用于将包含有头部信息的所述数据存储于预设的缓冲区。
[0091]由于所述1层接收到各个客户端发送的数据中不包含地址信息,即接收到的数据中不包含发送该数据的客户端的地址信息,所述地址信息包括客户端的本地地址及端口号,例如,本地地址:192.168.1.99,端口号:2400。因此,为了对各个客户端发送的数据进行分类区别,需要在接收到各个客户端发送的数据时,获取发送该数据的客户端的地址信息,即获取发送该数据的客户端的本地地址及端口号,所述1层可以通过客户端与服务器进行通讯创建的套接字中获取发送所述数据的客户端的地址信息。所述1层在获取到发送所述数据的客户端的地址信息后,将所述地址信息添加至接收到的所述数据的头部,使得接收到的数据都包含有数据源的地址信息,从而为分发层对该接收到数据进行转发处理提高了必要的识别信息。1层在将地址信息添加至接收到的数据的头部后,将该包含有头部的所述数据存储于预设的缓冲区。
[0092]本实施例通过所述1层在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息,并将所述地址信息添加至接收到的所述数据的头部,从而为所述分发层对该接收到数据进行转发处理提高了必要的识别信息,使得所述分发层能够准确的将各个客户端发送的数据分发至各请求处理线程中。
[0093]进一步地,参照图7,图7为本发明客户端数据处理装置的第三实施例的功能模块示意图。基于上述客户端数据处理装置的第二实施例,所述压入模块20包括:分类单元21、建立单元22及压入单元23。
[0094]所述分类单元21,用于从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的头部信息对提取到的所述数据进行分类;
[0095]所述建立单元22,用于根据提取到的所述数据的类别建立对应的管道;
[0096]所述压入单元23,用于将提取到的所述数据压入对应的管道中。
[0097]所述分发层在从所述预设的缓冲区中提取到存储的数据后,对所述提取到的数据进行分类。具体的,所述分发层根据提取到的数据的头部信息进行分类,由于提取到的数据的头部信息为客户端的地址信息,故在对各个提取到的数据进行分类时,将头部信息一致的数据分为一类,头部信息不一致的数据分为不同的类别。在将提取到的数据进行分类后,所述分发层根据数据的类别建立对应的管道,每一类的数据建立一个管道,存在多少个类别的数据就建立多少个管道,例如提取到的数据总共存在8类,则需要建立8个管道。所述分发层在建立管道时,可以在没发现一个新类别的数据就建立一个新的管道,若确定该提取的数据是已有类别的数据,则不需要再建立管道。分发层在建立管道后,即可将各个类别的数据分别压入与其类别相对应的管道中。
[0098]本实施例通过为每类数据都建立一个对应的管道,使得对各个客户端数据的处理更加及时,准确,不会产生混乱。
[0099]进一步地,参照图8,图8为本发明客户端数据处理装置的第四实施例的功能模块示意图。基于上述客户端数据处理装置的第三实施例,所述压入模块20还包括:移除单元24。
[0100]所述移除单元24,用于将提取到的所述数据的头部信息移除。
[0101]所述分发层在根据提取到的数据的类别建立对应的管道之后,由于提取到的数据的头部信息为客户端的地址信息,该信息的作用仅为分发层根据该信息确定将提取到的数据压入到哪个管道中,故在确定提取到的数据需要压入的管道后,为了节省存储空间,则在将该提取到的数据压入管道之前,可以将该提取到的数据的头部信息移除,以便处理层对该数据进行处理。进一步地,所述分发层将提取到的所述数据的头部信息移除的步骤也可以由所述处理层执行,即当所述处理层对管道中的数据处理之前,首先将待处理数据的头部移除,然后再对该数据进行相应的处理。
[0102]本实施例通过在将提取到的数据压入对应的管道之前,将该数据的头部信息移除,从而节省存储空间。
[0103]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0104]以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种客户端数据处理方法,应用于服务器中,其特征在于,所述服务器包括10层、分发层及处理层,所述客户端数据处理方法包括以下步骤: 所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中; 所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中; 所述处理层对各个管道中的数据进行相应的处理。2.如权利要求1所述的客户端数据处理方法,其特征在于,所述1层在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中的步骤包括: 所述1层在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息; 所述1层将所述地址信息添加至接收到的所述数据的头部; 所述1层将包含有头部信息的所述数据存储于预设的缓冲区。3.如权利要求2所述的客户端数据处理方法,其特征在于,所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中的步骤包括: 所述分发层从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的头部信息对提取到的所述数据进行分类; 所述分发层根据提取到的所述数据的类别建立对应的管道; 所述分发层将提取到的所述数据压入对应的管道中。4.如权利要求3所述的客户端数据处理方法,其特征在于,所述分发层将提取到的所述数据压入对应的管道中的步骤之前,还包括: 所述分发层将提取到的所述数据的头部信息移除。5.如权利要求1至4任一项所述的客户端数据处理方法,其特征在于,所述处理层对各个管道中的数据进行相应的处理的步骤包括: 所述处理层为各个管道分配一个工作线程,以通过所述工作线程对管道中的数据进行相应的处理。6.一种客户端数据处理装置,其特征在于,所述客户端数据处理装置包括; 存储模块,用于在接收到各个客户端发送的数据时,将接收到的数据存储于预设的缓冲区中; 压入模块,用于从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的类别将提取到的所述数据压入对应的管道中; 处理模块,用于对各个管道中的数据进行相应的处理。7.如权利要求6所述的客户端数据处理装置,其特征在于,所述存储模块包括: 获取单元,用于在接收到各个客户端发送的数据时,获取发送所述数据的客户端的地址信息; 添加单元,用于将所述地址信息添加至接收到的所述数据的头部; 存储单元,用于将包含有头部信息的所述数据存储于预设的缓冲区。8.如权利要求7所述的客户端数据处理装置,其特征在于,所述压入模块包括: 分类单元,用于从所述预设的缓冲区中提取存储的数据,并根据提取到的数据的头部信息对提取到的所述数据进行分类; 建立单元,用于根据提取到的所述数据的类别建立对应的管道; 压入单元,用于将提取到的所述数据压入对应的管道中。9.如权利要求7所述的客户端数据处理装置,其特征在于,所述压入模块还包括: 移除单元,用于将提取到的所述数据的头部信息移除。10.如权利要求6支9任一项所述的客户端数据处理装置,其特征在于,所述处理模块,还用于为各个管道分配一个工作线程,以通过所述工作线程对管道中的数据进行相应的处理。
【文档编号】G06F9/54GK106095597SQ201610370451
【公开日】2016年11月9日
【申请日】2016年5月30日
【发明人】许永昌, 盛阁
【申请人】深圳市鼎盛智能科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1