一种网络数据处理方法及系统与流程

文档序号:21719105发布日期:2020-08-05 01:08阅读:162来源:国知局
一种网络数据处理方法及系统与流程

本申请涉及计算机网络技术领域,尤其涉及一种网络数据处理方法及系统。



背景技术:

随着计算机网络技术的不断发展,每时每刻都会产生海量的数据,如何高效地对这些数据进行处理(包括采集、分析、展示、报警等)是人们需要解决的一个重要问题。

例如,现有技术的网络数据处理方案往往过多地关注于如何针对所采集的网络数据进行分析和展示,却忽略了针对数据请求的数据响应的处理,因此,现有技术的网络数据处理方案可能存在以下缺点:

服务端通常只是返回当前请求所需要的数据,也就是说,服务端每次只能根据当前请求响应数据,限制了服务器的处理效率以及请求的速度及体验。

为了解决上述问题,需要提出新的技术方案。



技术实现要素:

根据本申请的网络数据处理方法,包括:

接收客户端请求数据;

基于所接收的客户端请求数据,使用人工智能模型来预测未来的客户端请求数据;

发送针对所接收的客户端请求数据的、以及所预测的未来客户端请求数据的响应数据。

根据本申请的网络数据处理方法,还包括:

基于https双向认证的方式,建立客户端与服务器之间的应用层通信连接;

基于应用层通信连接,在客户端与服务器之间进行数据传输;和/或

在使用人工智能模型来预测未来的客户端请求数据之前,对客户端的历史请求数据进行机器学习,以获得人工智能模型。

根据本申请的网络数据处理方法,其服务器是分布式服务器集群中的服务器,方法还包括:

分布式服务器集群支持虚拟服务器和虚拟路由,

其中,基于虚拟路由冗余协议vrrp来实现分布式服务器集群中的虚拟服务器之间的虚拟路由。

根据本申请的网络数据处理方法,还包括:

分布式服务器集群支持分布式数据库,

其中,基于主从同步的方式来实现分布式数据库中的数据同步操作。

根据本申请的网络数据处理方法,还包括:

使用数据处理负载均衡服务器来实现针对客户端与分布式服务器集群之间的数据传输的调度,

其中,数据处理负载均衡服务器是nginx服务器,分布式数据库是elasticsearch数据库。

根据本申请的网络数据处理系统,包括客户端和服务器,其服务器用于:

接收客户端请求数据;

基于所接收的客户端请求数据,使用人工智能模型来预测未来的客户端请求数据;

发送针对所接收的客户端请求数据的、以及所预测的未来客户端请求数据的响应数据。

根据本申请的网络数据处理系统,其客户端和服务器还用于:

基于https双向认证的方式,建立客户端与服务器之间的应用层通信连接;

基于应用层通信连接,在客户端与服务器之间进行数据传输;和/或,服务器还用于:

在使用人工智能模型来预测未来的客户端请求数据之前,对客户端的历史请求数据进行机器学习,以获得人工智能模型。

根据本申请的网络数据处理系统,其服务器是分布式服务器集群中的服务器,分布式服务器集群支持虚拟服务器和虚拟路由,

其中,基于虚拟路由冗余协议vrrp来实现分布式服务器集群中的虚拟服务器之间的虚拟路由。

根据本申请的网络数据处理系统,其分布式服务器集群支持分布式数据库,

其中,基于主从同步的方式来实现分布式数据库中的数据同步操作。

根据本申请的网络数据处理系统,还包括:

数据处理负载均衡服务器,用于实现针对客户端与分布式服务器集群之间的数据传输的调度,

其中,数据处理负载均衡服务器是nginx服务器,分布式数据库是elasticsearch数据库。

根据本申请的上述技术方案,能够提前预测未来的请求数据,提前将针对所预测的未来请求数据的未来响应数据发送给客户端,提高了针对客户端请求数据的响应速度。

附图说明

构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示例性的示出了根据本申请的网络数据处理方法的示意流程图。

图2示例性的示出了根据本申请的网络数据处理系统的示意图。

图3示例性的示出了根据本申请的网络数据处理系统的一个具体实施例的示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

图1是根据本申请的网络数据处理方法的示意流程图。

如图1的实线框所示,根据本申请的网络数据处理方法,包括:

步骤s102:接收客户端请求数据;

步骤s104:基于所接收的客户端请求数据,使用人工智能模型来预测未来的客户端请求数据;

步骤s106:发送针对所接收的客户端请求数据的、以及所预测的未来客户端请求数据的响应数据。

根据本申请的上述技术方案能够提前将所确定的未来响应数据(例如,与当前和/或历史请求数据的关联概率超过预定阈值的、未来请求数据的响应数据)发送给客户端,从而实现客户端针对服务器数据的预先获取,在客户端的未来(例如,下一次)数据请求调用时,可不再向服务器请求其发送响应数据,而是直接使用已经预先获取的响应数据,提高了网络访问速度及用户体验。

例如,可以首先发送针对所接收的客户端请求数据的第一响应数据,在接收到客户端已经接收到了第一响应数据的确认信息之后,再发送针对所预测的未来客户端请求数据的第二响应数据。

即,上述技术方案实现了数据处理的智能化,例如,可以将针对服务器的多次请求的多次响应合并为一次响应,减小了服务器压力,避免网络的不可靠性造成的访问问题。

可选地,如图1的虚线框所示,根据本申请的网络数据处理方法,还包括:

步骤s108:基于https双向认证的方式,建立客户端与服务器之间的应用层通信连接;

步骤s110:基于应用层通信连接,在客户端与服务器之间进行数据传输;和/或

步骤s112:在使用人工智能模型来预测未来的客户端请求数据之前,对客户端的历史请求数据进行机器学习,以获得人工智能模型。

根据本申请的上述技术方案,通过在数据传输环节上采用https双向认证的模式(例如,通过api调用httpput、post请求的方式),保证了数据传输的安全性。

可选地,可以在进行数据传输时对数据进行加密,进一步保证数据传输的安全性。

例如,客户端与服务器之间的https双向认证和数据加密可以包括以下具体步骤:

1、从同一个ca认证机构生成一对(客户端秘钥、客户端证书——加密公钥)及一对(服务端秘钥、服务端证书),服务端及客户端证书申请上填写的信息要填写对应的域名。

2、(例如,数据库集群——下文所述的分布式数据库的)api调用接口可以使用443端口,增加ssl认证,放置服务端秘钥、服务端证书及ca证书(即,上述ca认证机构的证书)。

3、客户端请求处使用客户端秘钥、客户端证书及ca证书访问数据库集群的api。

4、客户端与服务端进行ssl双向认证。

5、双向认证成功后进行数据加速传输。

可选地,上述服务器是分布式服务器集群中的服务器,如图1的虚线框所示,根据本申请的网络数据处理方法,还包括:

步骤s114:分布式服务器集群支持虚拟服务器和虚拟路由,

其中,基于虚拟路由冗余协议(vrrp)来实现分布式服务器集群中的虚拟服务器之间的虚拟路由。

例如,步骤s114可以包括以下具体步骤:

1、使用vrrp为上述分布式服务器集群创造一个虚拟路由器,在该虚拟路由器下,设置一个虚拟ip,虚拟ip代理到集群机器的接口ip上,通过keepalived(第3层、第4层和第5层交换)的方式定期给集群的机器发心跳检测包,用于检测机器服务是否可用,如果能用,数据包从分布式服务器集群的主服务器的ip对应接口进入,再(例如,通过应用层软件)对数据包进行解析,完成解析并进行逻辑处理后,返回对应数据。

该步骤通过虚拟路由实现了服务器的高可用性(即,可靠性)。

2、在上述分布式服务器集群内的多个服务器上(例如,在与其连网的分布式数据库上)同步(备份)相同的数据。数据进入分布式服务器集群中的任何一个服务器后,会与整个集群共享数据,集群的主服务器为每个角色进行分工用于数据处理及存储。当客户端请求向集群中的某一台服务器查询数据时,集群的主服务器也会查询整个集群的数据并返回查询结果。

该步骤通过分布式(包括分布式管理软件)实现了服务器的高可用性。

当以上两个步骤结合以后,客户端访问集群地址的有效性、可用性会更高,只要集群内有服务器存活,那么数据请求就会得到处理及响应。当集群宕掉的服务器恢复后,存活的服务器会同步数据至重新加入的服务器,保证数据的完整,使集群能够平滑的进行容灾处理。

可选地,如图1的虚线框所示,根据本申请的网络数据处理方法,还包括:

步骤s116:分布式服务器集群支持分布式数据库,

其中,基于主从同步的方式来实现分布式数据库中的数据同步操作。

可选地,如图1的虚线框所示,根据本申请的网络数据处理方法,还包括:

步骤s118:使用数据处理负载均衡服务器来实现针对客户端与分布式服务器集群之间的数据传输的调度,

其中,上述数据处理负载均衡服务器是nginx服务器,上述分布式数据库是elasticsearch数据库。

根据本申请的上述技术方案,可以利用分布式数据库本身的分布式特性解决数据采集问题。

例如,数据采集源(即,上述客户端)获取到数据以后,可以主动调用本机的elasticsearch数据库(即,索引型数据库)集群访问接口,写入数据,在本机的elasticsearch数据库集群访问接口已经写入数据后,elasticsearch数据库(管理模块)会将这一份数据梳理成一个目录,使该数据作为整个elasticsearch数据库集群可以共享的数据。可以设置备份,例如,可以在其他服务器或其他数据库上备份elasticsearch数据库集群的数据,也可以在elasticsearch数据库集群的不同节点数据库之间相互备份数据。可以定期对elasticsearch数据库集群中的数据进行rebalance(再分配),以在数据库集群的各个数据库之间重新平衡各自所占用的数据存储空间的大小。可以在集群的其他elasticsearch节点(即,数据库)上调用数据时,也会获取该节点上收集的数据。

传统的数据采集操作大多是由一个master主机向(例如,整个集群中的)客户端发送数据收集请求,然后把各个客户端返回的数据都存储在同一个master的数据库中,这种传统操作方式效率较低、可靠性差、使用单一数据库、资源利用不均衡。

根据本申请的上述技术方案能够在分布式数据库中同步各个节点数据库的数据,避免了单点故障,避免了数据不一致的问题,提高了数据库的可用性。

图2是根据本申请的网络数据处理系统的示意图。

如图2的实线框所示,根据本申请的网络数据处理系统200,包括客户端201和服务器203,其中,服务器203用于:

接收客户端请求数据;

基于所接收的客户端请求数据,使用人工智能模型来预测未来的客户端请求数据;

发送针对所接收的客户端请求数据的、以及所预测的未来客户端请求数据的响应数据。

客户端201可以包括如图2所示的个人电脑,以及手机、pad、物联网终端设备等。然而,客户端201不限于此,还可以包括服务器203、数据库205、数据处理负载均衡服务器207、网络中的路由器、交换机(在图2中未示出)等。

可选地,客户端201和服务器203还用于:

基于https双向认证的方式,建立客户端201与服务器203之间的应用层通信连接;

基于应用层通信连接,在客户端201与服务器203之间进行数据传输;和/或,服务器203还用于:

在使用人工智能模型来预测未来的客户端请求数据之前,对客户端201的历史请求数据进行机器学习,以获得人工智能模型。

可选地,服务器203是分布式服务器集群中的服务器,分布式服务器集群203支持虚拟服务器和虚拟路由,

其中,基于vrrp来实现分布式服务器集群203中的虚拟服务器之间的虚拟路由。

可选地,如图2的虚线线框所示,分布式服务器集群203支持分布式数据库205,

其中,基于主从同步的方式来实现分布式数据库205中的数据同步操作。

可选地,如图2的虚线框所示,根据本申请的网络数据处理系统200还包括:

数据处理负载均衡服务器207,用于实现针对客户端201与分布式服务器集群203之间的数据传输的调度,

其中,上述数据处理负载均衡服务器207是nginx服务器,上述分布式数据库205是elasticsearch数据库。

为了使本领域技术人员更清楚地理解根据本申请的上述技术方案,下面将结合具体实施例进行描述。

图3示例性的示出了根据本申请的网络数据处理系统的一个具体实施例的示意图。

图3所示的实施例对应于结合图2所述的、包含数据处理负载均衡服务器207的上述技术方案。

图3所示的“directorserver”对应于上述数据处理负载均衡服务器207,其工作于图3所定义的“负载均衡层”,支持基于虚拟ip(vip)的“router”的虚拟路由。“directorserver”执行“心跳检测”,以宣告自身是否能够提供负载均衡服务。为了实现负载均衡服务的高可用性,“directorserver”支持“ip漂移”。

例如,该“负载均衡层”可以基于vrrp协议和虚拟ip来构建,用于执行网络层的负载均衡、“directorserver”心跳检测,比在应用层执行负载均衡的技术方案的可靠性更高。

图3所示的“realserver”对应于上述分布式服务器集群203中的各个服务器,其工作于图3所定义的“应用服务层”。“realserver”根据“directorserver”的“状态监控”指令,将自身的状态上报给“directorserver”,供“directorserver”进行负载均衡调度时使用。

例如,该“应用服务层”可以是虚拟ip负载均衡过后的、拥有真实ip的应用层,该“应用服务层”可以通过虚拟层、使用keepalived(软件)发送心跳检测包来检测(各个“realserver”)是否存活,用于标识该虚拟ip所对应的各个机器是否存活。

图3所示的“elasticsearchdatabase”对应于上述分布式数据库205中的各个数据库,其工作于图3所定义的“数据(处理)层”。

例如,该“数据(处理)层”可以是“应用服务层”(即,各个“realserver”)存活下的应用数据处理层,在确认应用服务层该ip存活并且请求到了这台机器上的情况下,对请求进行响应处理。图3所定义的“数据(处理)层”可以使用elasticsearch数据库,用于分布式存储数据,不论数据到达与elasticsearch数据库连接的哪一台机器(即,上述“realserver”),该elasticsearch数据库集群(即,上述分布式数据库205)都可以共享该数据,同理,针对elasticsearch数据库集群中的任何一个数据库的查询请求,可以查询到整个elasticsearch数据库集群的数据,充分体现分布式软件的特点。因此,提供了具有高可用性的数据库解决方案。

根据本申请的上述技术方案,具有以下优点:

1、可以提前将所确定的未来响应数据发送给客户端,从而实现客户端针对服务器数据的预先获取,在客户端的未来(例如,下一次)数据请求调用时,可不再向服务器请求数据,提高了网络访问速度及用户体验。即,无需等待客户端再次发送请求,服务端就能提前返回数据,达到了更快速返回数据的效果。

2、还可以使用这些人工智能模型,通过机器学习的方法来学习正常用户的访问行为,进一步优化业务架构模型,排查业务漏洞。

3、采用https双向认证的方式来建立应用层通信连接,保证了数据传输的安全性。结合了分布式服务器集群,提供了具有高可用性(即,可靠性高)的服务器。

4、可以结合分布式数据库集群进行数据备份、数据同步、数据再分配等操作,提供了具有高可用性、容灾特性更好、数据一致性更好的数据库。

5、可以结合负载均衡(例如,可以结合针对数据处理负载均衡服务器进行的存活探测),进一步提高数据处理的效率。

上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本申请的保护范围之内。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。

以上实施例仅用以说明本申请的技术方案而非限制,仅仅参照较佳实施例对本申请进行了详细说明。本领域的普通技术人员应当理解,可以对本申请的技术方案进行修改或者等同替换,而不脱离本申请技术方案的精神和范围,均应涵盖在本申请的权利要求范围当中。

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1