CN112087520A - 数据处理方法、装置、设备及计算机可读存储介质 - Google Patents

数据处理方法、装置、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN112087520A
CN112087520A CN202010964026.3A CN202010964026A CN112087520A CN 112087520 A CN112087520 A CN 112087520A CN 202010964026 A CN202010964026 A CN 202010964026A CN 112087520 A CN112087520 A CN 112087520A
Authority
CN
China
Prior art keywords
request instruction
micro service
service node
data processing
target
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.)
Granted
Application number
CN202010964026.3A
Other languages
English (en)
Other versions
CN112087520B (zh
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.)
SHENZHEN SEAGEN TECHNOLOGY CO LTD
Original Assignee
SHENZHEN SEAGEN TECHNOLOGY CO 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 SHENZHEN SEAGEN TECHNOLOGY CO LTD filed Critical SHENZHEN SEAGEN TECHNOLOGY CO LTD
Priority to CN202010964026.3A priority Critical patent/CN112087520B/zh
Publication of CN112087520A publication Critical patent/CN112087520A/zh
Application granted granted Critical
Publication of CN112087520B publication Critical patent/CN112087520B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种数据处理方法、装置、设备及计算机可读存储介质,本发明数据处理方法包括:创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。从而提高了微服务架构的高可用和高效率。

Description

数据处理方法、装置、设备及计算机可读存储介质
技术领域
本发明涉及通信网络技术领域,尤其涉及一种终端数据处理方法、装置、设备及计算机可读存储介质。
背景技术
随着互联网的发展,应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构势在必行,而微服务架构就是其中一种。并且微服务架构是将单体应用划分成一组微小的服务,各个服务之间使用轻量级的通信机制交互。而现有微服务框架只是实现了服务发布和调用等核心基础功能,但是面对如高频次的服务调用等场景时,效率及其低下,也就是传统的微服务架构无法实现高可用,其效率也低下。
发明内容
本发明的主要目的在于提出一种数据处理方法、装置、设备及计算机可读存储介质,旨在解决如何提高微服务架构的高可用和高效率的技术问题。
为实现上述目的,本发明提供一种数据处理方法,所述数据处理方法包括如下步骤:
创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;
若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;
若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。
可选地,基于所述消息队列执行所述请求指令的步骤,包括:
根据所述请求指令在所述消息队列中的位置确定执行所述请求指令的执行时间;
根据所述目标微服务节点的节点信息确定执行所述请求指令的执行方式,并根据所述执行时间和执行方式执行所述请求指令。
可选地,根据所述目标微服务节点的节点信息确定执行所述请求指令的执行方式的步骤,包括:
根据所述目标微服务节点的节点信息获取所述目标微服务节点的所有历史记录,并将各所述历史记录和所述请求指令进行匹配;
若各所述历史记录和所述请求指令都不匹配,则将访问所述目标微服务节点对应的数据库的方式作为所述请求指令的执行方式。
可选地,将各所述历史记录和所述请求指令进行匹配的步骤之后,包括:
若在各所述历史记录中存在和所述请求指令匹配的目标历史记录,则将所述目标历史记录的历史数据添加至预设的redis缓存,以获取目标redis缓存,并将访问所述目标redis缓存的方式作为执行所述请求指令的执行方式。
可选地,检测所述目标微服务节点是否支持实时执行所述请求指令的步骤,包括:
获取所述目标微服务节点的负载状态,判断所述负载状态是否为低负载状态,并根据所述判断所述负载状态是否为低负载状态的判断结果确定所述目标微服务节点是否支持实时执行所述请求指令。
可选地,代理服务器为Nginx服务器。
可选地,若所述代理服务器接收到请求指令的步骤之后,包括:
确定所述请求指令对应的账号信息,并对所述账号信息进行鉴权认证;
若所述鉴权认证通过,则执行所述基于各所述微服务节点确定所述请求指令对应的目标微服务节点的步骤。
此外,为实现上述目的,本发明还提供一种数据处理装置,包括:
创建模块,用于创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;
检测模块,用于若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;
执行模块,用于若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。
此外,为实现上述目的,本发明还提供一种数据处理设备,所述数据处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上所述的数据处理方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如上所述的数据处理方法的步骤。
本发明通过创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。通过创建服务器对应的代理服务器,并将服务器划分为多个微服务节点,在代理服务器接收到请求指令时,确定请求指令对应的目标微服务节点,并在目标微服务节点不支持实时执行请求指令时,将请求指令添加至消息队列中,基于消息队列执行该请求指令,从而避免了现有技术中微服务架构无法应对高频次的服务调用的场景发生,通过消息队列执行请求指令,实现了微服务架构的高可用和高效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的数据处理设备结构示意图;
图2为本发明基于业务端的数据处理方法一实施例的流程示意图;
图3为本发明数据处理装置中的装置模块示意图;
图4为本发明数据处理方法中服务器的场景示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的数据处理设备结构示意图。
本发明实施例数据处理设备可以是搭载了虚拟化平台的PC机或服务器(如X86服务器)等终端设备。
如图1所示,该数据处理设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据处理程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的数据处理程序,并执行以下安全组件的数据处理方法实施例中的操作。
创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;
若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;
若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。
基于上述硬件结构,提出本发明数据处理方法实施例,如下所述。
参照图2,图2为本发明数据处理方法一种实施例的流程示意图,所述数据处理方法包括:
步骤S10,创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;
在本实施例中,通过云端部署统一管理服务数据系统,以实现服务分离和负载均衡、大数据分析等功能,并能支持多个终端的并发访问和业务控制。因此可以先创建服务器对应的代理服务器,以便客户端通过代理服务器来访问实际的服务器,避免服务器的负载不均衡而不可用的现象发生。而创建服务器对应的代理服务器可以是通过Nginx的方式来进行的,也就是通过采用Nginx反向代理的架构实现负载均衡,创建的代理服务器可以是Nginx服务器。
其中,Nginx是一种高性能的HTTP(HyperText Transfer Protocol,超文本传输协议)和反向代理服务器,通过负载均衡策略给各个微服务节点发送请求。Nginx反向代理是代理的服务器,Nginx正向代理是代理的客户端。在本实施例中通过Nginx反向代理,可以让客户端对代理操作无感知,即客户端不需要添加如何配置就可以进行正常访问操作。因此当客户端将请求指令发送到Nginx服务器,由Nginx服务器在各个微服务节点中确定目标微服务节点,并获取与此请求指令对应的数据返回给客户端,以完成客户端的正常访问。并且对于客户端来说Nginx服务器和目标微服务节点所在的服务器是同一个服务器,在客户端中也只能看到Nginx服务器的服务地址。
并且在本实施例中,可以通过提取设置的微服务处理方式将服务器划分为多个微服务节点,例如通过Spring Cloud(一系列框架的有序集合)微服务架构来将服务器划分为多个微服务节点,也就是服务器可以根据Sring Cloud来构建高可用、高性能的微服务集群,即微服务节点。而且需要说明的是,在本实施例中,可以同时对多个服务器进行Nginx反向代理。而且通过Spring Cloud微服务架构来将服务器划分为多个微服务节点时,可以基于不同的功能进行划分,例如数据库的主从读写分离等。
并且在代理服务器中可以实现Nginx负载均衡,基础信息服务(如鉴权),Redis服务,前端WEB(World Wide Web,全球广域网)静态缓存等功能。Nginx负载均衡可以是代理服务器在接收到客户端发送的请求指令时,先对请求指令对应的目标微服务节点的负载阈值进行判断,并根据不同的判断结果确定请求指令的执行方式,以实现Nginx负载均衡。而基础信息服务可以包括组织架构,用户账号信息,权限,登录鉴权等,组织架构可以是代理服务器中已包含的所有微服务节点的服务器信息,而用户账号信息可以是确定各个微服务节点允许被哪些用户账号信息进行访问,并且在有客户端访问代理服务器时先对登录客户端的用户账号进行登录鉴权认证,以确定该用户账号是否具有后续的操作权限。
步骤S20,若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;
当经过判断发现代理服务器接收到客户端发送的请求指令后,会先对该请求指令对应的账号信息进行登录鉴权检测,确定该账号信息是否具有访问的权限,若具有,则取该请求指令的统一资源标识符,并根据统一资源标识符在各个微服务节点中查找对应的目标微服务节点,并根据目标微服务节点提前设置的负载均衡策略进行转发,也就是基于目标微服务节点的负载阈值进行确定是实时执行请求指令,还是异步执行请求指令。即目标微服务节点接收到请求指令,则缓存中间件redis(Remote Dictionary Server,远程字典服务)计数器加一,并根据目标微服务节点的负载阈值(即缓存中间加redis计数器统计的数据)判断是否对请求指令进行实时执行还是异步执行。若是实时执行,则可以使用线程池技术,多线程调用统一的评测计算引擎执行请求指令,以快速响应。若是异步执行,则会将请求指令提交到消息队列中间件MQ(Message Queue,消息队列),各个微服务节点并行消费消息队列中间件MQ中的数据,调用统一的评测计算引擎进行计算得到结果,再立即异步通知发送请求指令的客户端。
步骤S30,若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。
当经过判断发现目标微服务节点不支持实时执行所述请求指令,则需要异步执行请求指令,此时就可以将请求指令直接添加至目标微服务节点对应的消息队列中,如MQ消息队列,目标微服务节点从消息队列中读取多条数据进行执行,也就是按照消息队列中的排列顺序依次执行相应数据操作。而且在本实施例中,消息队列是进行连接池管理的。当在消息队列中执行到请求指令时,会在目标微服务节点的数据库中执行相应操作,如在数据库中读数据,或者是在数据库中写数据等操作。并且需要说明的是,若在历史记录中有存在相同的操作,则可以直接在redis缓存中执行该请求指令,而不用到数据库中执行。并在请求指令执行完成后,会通过代理服务器反馈执行结果到客户端。
另外,为辅助理解本实施例中的数据处理的原理的理解下面进行举例说明。
例如,如图4所示,可以对服务器进行Nginx反向代理,得到服务器1,即代理服务器,该代理服务器具有Nginx负载均衡,基础信息服务(鉴权token),Redis服务(主),前端WEB,静态缓存等功能,以便客户端对服务器1进行访问,并将服务器按照Spring Cloud微服务架构进行划分,如服务器2和服务器3,且都具有MQ消息队列,并且服务器2中的MQ消息队列(主)和服务器3中的MQ消息队列(从)采用连接池的方式进行管理。而且数据库会进行主从读写分离,即在服务器2中,主数据库进行写操作,在服务器3中,主数据库进行读操作。并且服务器2中可以进行数据采集服务,备用数据报表服务(缓存)等。服务器3还可以进行Redis服务(从),数据报表服务(缓存),备用数据采集服务等。
在本实施例中,通过创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。通过创建服务器对应的代理服务器,并将服务器划分为多个微服务节点,在代理服务器接收到请求指令时,确定请求指令对应的目标微服务节点,并在目标微服务节点不支持实时执行请求指令时,将请求指令添加至消息队列中,基于消息队列执行该请求指令,从而避免了现有技术中微服务架构无法应对高频次的服务调用的场景发生,通过消息队列执行请求指令,实现了微服务架构的高可用和高效率。
进一步地,基于上述本发明的实施例,提出本发明数据处理方法的另一种实施例,本实施例中,上述实施例中的步骤S30,基于所述消息队列执行所述请求指令的步骤的细化,包括:
步骤a,根据所述请求指令在所述消息队列中的位置确定执行所述请求指令的执行时间;
在本实施例中,当将请求指令添加至消息队列后,先确定请求指令在消息队列中的位置,由于消息队列中具有先进先出的规则,因此确定请求指令在消息队列中的位置后,就可以根据此位置推断出执行请求指令的执行时间。
步骤b,根据所述目标微服务节点的节点信息确定执行所述请求指令的执行方式,并根据所述执行时间和执行方式执行所述请求指令。
并且在目标微服务节点中,需要获取目标微服务节点的节点信息,如历史记录,最大负载阈值等信息,并在获取到节点信息后,可以根据此节点信息来确定执行请求指令的执行方式,如直接访问数据库的方式,还是访问redis缓存的方式,并在到达执行时间后,根据此执行方式执行请求指令,并执行结果通过代理服务器反馈给到请求指令对应的客户端。
在本实施例中,通过根据请求指令在消息队列中的位置确定执行时间,并根据目标微服务节点的节点信息确定执行方式,再根据执行时间和执行方式执行请求指令,从而保障了请求指令执行的有效进行。
具体地,根据所述目标微服务节点的节点信息确定执行所述请求指令的执行方式的步骤,包括:
步骤c,根据所述目标微服务节点的节点信息获取所述目标微服务节点的所有历史记录,并将各所述历史记录和所述请求指令进行匹配;
在本实施例中,在获取执行请求指令的执行方式时,需要先获取目标微服务节点的节点信息,并在节点信息中提取一定时间范围内,目标微服务节点的所有历史记录(包括目标微服务节点已经执行过的操作),并将各个历史记录依次和请求指令进行匹配,根据不同的匹配结果执行不同的操作。
步骤d,若各所述历史记录和所述请求指令都不匹配,则将访问所述目标微服务节点对应的数据库的方式作为所述请求指令的执行方式。
当经过判断发现各个历史记录和请求指令都不匹配,则可以确定目标微服务节点在当前时刻之前未处理过和请求指令相关的操作,因此可以直接允许请求指令访问目标微服务节点对应的数据库,并将访问目标微服务节点对应的数据库的方式作为执行请求指令的执行方式。
在本实施例中,通过将目标微服务节点中的所有历史记录和请求指令进行匹配,并在都不匹配时,将访问数据库的方式作为请求指令的执行方式,从而保障了执行请求指令的有效进行。
具体地,将各所述历史记录和所述请求指令进行匹配的步骤之后,包括:
步骤e,若在各所述历史记录中存在和所述请求指令匹配的目标历史记录,则将所述目标历史记录的历史数据添加至预设的redis缓存,以获取目标redis缓存,并将访问所述目标redis缓存的方式作为执行所述请求指令的执行方式。
在本实施例中,当经过判断发现在各个历史记录中存在和请求指令匹配的目标历史记录,则可以确定在当前时刻之前目标微服务节点执行过和请求指令相关的操作,即目标历史记录中的执行操作,并提取目标历史记录中的历史数据,将其添加至预设的redis缓存中,以获取目标redis缓存,并允许请求指令直接访问目标缓存,也就是将访问目标redis缓存的方式作为执行请求指令的执行方式。
在本实施例中,通过当存在和请求指令匹配的目标历史记录时,将目标历史记录的历史数据添加至redis缓存,获取目标redis缓存,并将访问目标redis缓存的方式作为执行请求指令的方式,从而保障了执行请求指令的有效进行。
进一步地,检测所述目标微服务节点是否支持实时执行所述请求指令的步骤,包括:
步骤f,获取所述目标微服务节点的负载状态,判断所述负载状态是否为低负载状态,并根据所述判断所述负载状态是否为低负载状态的判断结果确定所述目标微服务节点是否支持实时执行所述请求指令。
在本实施例中,当确定目标微服务节点是实时执行请求指令,还是异步执行请求时,需要先获取目标微服务节点的负载状态,以确定目标微服务节点可以执行多少操作,并判断目标微服务节点的负载状态是否为低负载状态,即检测目标微服务节点是否还能继续执行数据处理操作,如执行请求指令的操作。若是低负载状态,则目标微服务节点可以支持实时执行请求指令,并实时执行请求指令,若不是低负载状态,则目标微服务节点不支持实时执行请求指令,需要异步执行请求指令,即可以将请求指令放置在消息队列中。其中,负载状态包括但不限于被调用状态、被调用次数等等。低负载状态可以是被调用次数低于某一定值时的状态。
在本实施例中,通过判断目标微服务节点的负载状态是否为低负载状态,并根据不同的判断结果确定目标微服务节点是否支持实时执行请求指令,从而保障了服务器的执行效率。
进一步地,代理服务器为Nginx服务器。即通过Nginx的方式来进行代理服务器创建的,也就是通过采用Nginx反向代理的架构实现负载均衡,创建的代理服务器可以是Nginx服务器。从而实现了数据处理的负载均衡。
进一步地,若所述代理服务器接收到请求指令的步骤之后,包括:
步骤g,确定所述请求指令对应的账号信息,并对所述账号信息进行鉴权认证;
在本实施例中,当在本实施例中,当代理服务器接收到请求指令后,可以先确定请求指令携带的账号信息,即输出请求指令所在客户端的登录账号,并对此账号信息进行鉴权认证,确定该账号信息是否具有登录和操作权限,若鉴权认证不通过,则确定该账号信息不具有相应权限,此时就不会执行该请求指令。
步骤h,若所述鉴权认证通过,则执行所述基于各所述微服务节点确定所述请求指令对应的目标微服务节点的步骤。
当经过判断发现鉴权认证通过,则可以继续让代理服务器执行该请求指令,即在各个微服务节点中确定请求指令对应的目标微服务节点的操作。
在本实施例中,通过在确定请求指令对应的账号信息的鉴权认证通过时,执行基于各个微服务节点确定请求指令对应的目标微服务节点的步骤,从而保障了数据处理的安全性。
参照图3,本发明还提供一种数据处理装置,本实施例中,所述数据处理系统包括:
创建模块A10,用于创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;
检测模块A20,用于若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;
执行模块A30,用于若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。
可选地,所述执行模块A30,还用于:
根据所述请求指令在所述消息队列中的位置确定执行所述请求指令的执行时间;
根据所述目标微服务节点的节点信息确定执行所述请求指令的执行方式,并根据所述执行时间和执行方式执行所述请求指令。
可选地,所述执行模块A30,还用于:
根据所述目标微服务节点的节点信息获取所述目标微服务节点的所有历史记录,并将各所述历史记录和所述请求指令进行匹配;
若各所述历史记录和所述请求指令都不匹配,则将访问所述目标微服务节点对应的数据库的方式作为所述请求指令的执行方式。
可选地,所述执行模块A30,还用于:
若在各所述历史记录中存在和所述请求指令匹配的目标历史记录,则将所述目标历史记录的历史数据添加至预设的redis缓存,以获取目标redis缓存,并将访问所述目标redis缓存的方式作为执行所述请求指令的执行方式。
可选地,所述检测模块A20,还用于:
获取所述目标微服务节点的负载状态,判断所述负载状态是否为低负载状态,并根据所述判断所述负载状态是否为低负载状态的判断结果确定所述目标微服务节点是否支持实时执行所述请求指令。
可选地,所述创建模块A10,还用于:所述代理服务器为Nginx服务器。
可选地,所述检测模块A20,还用于:
确定所述请求指令对应的账号信息,并对所述账号信息进行鉴权认证;
若所述鉴权认证通过,则执行所述基于各所述微服务节点确定所述请求指令对应的目标微服务节点的步骤。
其中,在所述处理器上运行的数据处理程序被执行时所实现的方法可参照本发明数据处理方法各个实施例,此处不再赘述。
此外,本发明还提供一种数据处理设备,数据处理设备包括:存储器,处理器及存储在存储器上并可在处理器上运行的数据处理程序、数据处理程序被处理器执行时所实现的方法可参照本发明数据处理方法各个实施例,此处不再赘述。
此外,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有数据处理程序,数据处理程序被处理器执行时所实现的方法可参照本发明数据处理方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种数据处理方法,其特征在于,所述数据处理方法包括如下步骤:
创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;
若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;
若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。
2.如权利要求1所述的数据处理方法,其特征在于,所述基于所述消息队列执行所述请求指令的步骤,包括:
根据所述请求指令在所述消息队列中的位置确定执行所述请求指令的执行时间;
根据所述目标微服务节点的节点信息确定执行所述请求指令的执行方式,并根据所述执行时间和执行方式执行所述请求指令。
3.如权利要求2所述的数据处理方法,其特征在于,所述根据所述目标微服务节点的节点信息确定执行所述请求指令的执行方式的步骤,包括:
根据所述目标微服务节点的节点信息获取所述目标微服务节点的所有历史记录,并将各所述历史记录和所述请求指令进行匹配;
若各所述历史记录和所述请求指令都不匹配,则将访问所述目标微服务节点对应的数据库的方式作为所述请求指令的执行方式。
4.如权利要求3所述的数据处理方法,其特征在于,所述将各所述历史记录和所述请求指令进行匹配的步骤之后,包括:
若在各所述历史记录中存在和所述请求指令匹配的目标历史记录,则将所述目标历史记录的历史数据添加至预设的redis缓存,以获取目标redis缓存,并将访问所述目标redis缓存的方式作为执行所述请求指令的执行方式。
5.如权利要求1所述的数据处理方法,其特征在于,所述检测所述目标微服务节点是否支持实时执行所述请求指令的步骤,包括:
获取所述目标微服务节点的负载状态,判断所述负载状态是否为低负载状态,并根据所述判断所述负载状态是否为低负载状态的判断结果确定所述目标微服务节点是否支持实时执行所述请求指令。
6.如权利要求1所述的数据处理方法,其特征在于,所述代理服务器为Nginx服务器。
7.如权利要求1-6任一项所述的数据处理方法,其特征在于,所述若所述代理服务器接收到请求指令的步骤之后,包括:
确定所述请求指令对应的账号信息,并对所述账号信息进行鉴权认证;
若所述鉴权认证通过,则执行所述基于各所述微服务节点确定所述请求指令对应的目标微服务节点的步骤。
8.一种数据处理装置,其特征在于,所述数据处理装置包括:
创建模块,用于创建服务器对应的代理服务器,根据预设的微服务处理方式将所述服务器划分为多个微服务节点;
检测模块,用于若所述代理服务器接收到请求指令,则基于各所述微服务节点确定所述请求指令对应的目标微服务节点,并检测所述目标微服务节点是否支持实时执行所述请求指令;
执行模块,用于若否,则将所述请求指令添加至所述目标微服务节点对应的消息队列,并基于所述消息队列执行所述请求指令。
9.一种数据处理设备,其特征在于,所述数据处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如权利要求1至7中任一项所述的数据处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如权利要求1至7中任一项所述的数据处理方法的步骤。
CN202010964026.3A 2020-09-14 2020-09-14 数据处理方法、装置、设备及计算机可读存储介质 Active CN112087520B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010964026.3A CN112087520B (zh) 2020-09-14 2020-09-14 数据处理方法、装置、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010964026.3A CN112087520B (zh) 2020-09-14 2020-09-14 数据处理方法、装置、设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112087520A true CN112087520A (zh) 2020-12-15
CN112087520B CN112087520B (zh) 2023-08-22

Family

ID=73738033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010964026.3A Active CN112087520B (zh) 2020-09-14 2020-09-14 数据处理方法、装置、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112087520B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112764948A (zh) * 2021-01-22 2021-05-07 土巴兔集团股份有限公司 数据发送方法、数据发送装置、计算机设备及存储介质
CN112765117A (zh) * 2021-01-26 2021-05-07 中国船级社 基于微服务架构的工业互联网标识解析系统
CN113032000A (zh) * 2021-03-22 2021-06-25 四川众信佳科技发展有限公司 一种智能运营数据管理装置、方法和计算机系统
CN114338763A (zh) * 2021-12-20 2022-04-12 深圳Tcl新技术有限公司 微服务调用方法、装置、服务器与计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108322471A (zh) * 2016-05-11 2018-07-24 甲骨文国际公司 多租户身份和数据安全性管理云服务
CN108628987A (zh) * 2018-04-28 2018-10-09 新疆熙菱信息技术股份有限公司 高可用负载数据查询方法及系统
US20180352033A1 (en) * 2017-05-30 2018-12-06 Verizon Patent And Licensing Inc. Blockchain micro-services framework
CN109144683A (zh) * 2017-06-28 2019-01-04 北京京东尚科信息技术有限公司 任务处理方法、装置、系统及电子设备
CN109753370A (zh) * 2018-12-28 2019-05-14 北京东方国信科技股份有限公司 一种低时延、高吞吐的远程过程调用方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108322471A (zh) * 2016-05-11 2018-07-24 甲骨文国际公司 多租户身份和数据安全性管理云服务
CN108322472A (zh) * 2016-05-11 2018-07-24 甲骨文国际公司 多租户身份和数据安全性管理云服务
CN108337260A (zh) * 2016-05-11 2018-07-27 甲骨文国际公司 多租户身份和数据安全性管理云服务
US20180352033A1 (en) * 2017-05-30 2018-12-06 Verizon Patent And Licensing Inc. Blockchain micro-services framework
CN109144683A (zh) * 2017-06-28 2019-01-04 北京京东尚科信息技术有限公司 任务处理方法、装置、系统及电子设备
CN108628987A (zh) * 2018-04-28 2018-10-09 新疆熙菱信息技术股份有限公司 高可用负载数据查询方法及系统
CN109753370A (zh) * 2018-12-28 2019-05-14 北京东方国信科技股份有限公司 一种低时延、高吞吐的远程过程调用方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112764948A (zh) * 2021-01-22 2021-05-07 土巴兔集团股份有限公司 数据发送方法、数据发送装置、计算机设备及存储介质
CN112765117A (zh) * 2021-01-26 2021-05-07 中国船级社 基于微服务架构的工业互联网标识解析系统
CN113032000A (zh) * 2021-03-22 2021-06-25 四川众信佳科技发展有限公司 一种智能运营数据管理装置、方法和计算机系统
CN114338763A (zh) * 2021-12-20 2022-04-12 深圳Tcl新技术有限公司 微服务调用方法、装置、服务器与计算机可读存储介质
CN114338763B (zh) * 2021-12-20 2024-01-19 深圳Tcl新技术有限公司 微服务调用方法、装置、服务器与计算机可读存储介质

Also Published As

Publication number Publication date
CN112087520B (zh) 2023-08-22

Similar Documents

Publication Publication Date Title
CN112087520B (zh) 数据处理方法、装置、设备及计算机可读存储介质
US20200099606A1 (en) Distrubuted testing service
US9729557B1 (en) Dynamic throttling systems and services
US11175913B2 (en) Elastic application framework for deploying software
CN111338762B (zh) 请求处理技术
US9122510B2 (en) Querying and managing computing resources in a networked computing environment
CN109634718B (zh) 云平台创建镜像的方法及系统
US20090327460A1 (en) Application Request Routing and Load Balancing
US11799849B2 (en) Secure web application delivery platform
CN109831466B (zh) 微服务业务处理方法及nginx服务器
US20060294141A1 (en) Smart business object proxy
CN112364110A (zh) 元数据管理方法、装置、设备及计算机存储介质
US11848872B2 (en) Providing on-demand production of graph-based relationships in a cloud computing environment
CN106533961B (zh) 一种流量控制方法及装置
CN111787036A (zh) 一种前端私有云部署的解决方法、装置、存储介质及设备
CN113067878A (zh) 信息采集方法、装置、设备、介质及程序产品
CN114595457A (zh) 任务处理方法、装置、计算机设备和存储介质
CN115396319B (zh) 数据流分片方法、装置、设备及存储介质
CN116861455B (zh) 事件数据处理方法、系统、电子设备及存储介质
US20230401275A1 (en) Tenant network for rewriting of code included in a web page
CN110134377B (zh) 电力行业管理信息系统的数据请求处理方法、装置及设备
CN116361126A (zh) 性能测试方法、装置、设备以及计算机存储介质
CN113467967A (zh) 网络加载资源的配置方法、资源配置系统及相关装置
CN115982160A (zh) 数据处理方法、服务器、电子设备及计算机存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant