[go: up one dir, main page]

CN108234349A - The method and apparatus for improving SOA system robustness - Google Patents

The method and apparatus for improving SOA system robustness Download PDF

Info

Publication number
CN108234349A
CN108234349A CN201711401065.7A CN201711401065A CN108234349A CN 108234349 A CN108234349 A CN 108234349A CN 201711401065 A CN201711401065 A CN 201711401065A CN 108234349 A CN108234349 A CN 108234349A
Authority
CN
China
Prior art keywords
service request
message queue
soa
soa system
service
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
CN201711401065.7A
Other languages
Chinese (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.)
China United Network Communications Group Co Ltd
China Unicom System Integration Ltd Corp
Original Assignee
China United Network Communications Group Co Ltd
China Unicom System Integration Ltd Corp
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 China United Network Communications Group Co Ltd, China Unicom System Integration Ltd Corp filed Critical China United Network Communications Group Co Ltd
Priority to CN201711401065.7A priority Critical patent/CN108234349A/en
Publication of CN108234349A publication Critical patent/CN108234349A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种提高SOA系统健壮性的方法和装置,该方法,包括:接收针对面向服务的架构SOA系统的服务请求,并将所述服务请求放入消息队列中;读取所述SOA系统的标志位,并根据所述标志位来确定所述SOA系统的当前状态;在所述SOA系统的当前状态为拥塞时,缓冲所述消息队列中的服务请求,并向所述服务请求对应的客户端反馈第一提醒信息。本发明实现在SOA系统处于拥塞状态时,对SOA系统的服务请求进行缓冲处理,并向服务请求对应的客户端反馈提醒信息,从而提高SOA系统的健壮性,提升客户端的交互体验。

The present invention provides a method and device for improving the robustness of an SOA system. The method includes: receiving a service request for a service-oriented architecture SOA system, and putting the service request into a message queue; reading the SOA system flag bit, and determine the current state of the SOA system according to the flag bit; when the current state of the SOA system is congested, buffer the service request in the message queue, and request the corresponding service request to the service The client feeds back the first reminder information. The invention realizes buffering the service request of the SOA system when the SOA system is in a congested state, and feeds back reminder information to the client corresponding to the service request, thereby improving the robustness of the SOA system and improving the interactive experience of the client.

Description

提高SOA系统健壮性的方法和装置Method and device for improving robustness of SOA system

技术领域technical field

本发明涉及数据处理技术领域,尤其涉及一种提高SOA系统健壮性的方法和装置。The invention relates to the technical field of data processing, in particular to a method and a device for improving the robustness of an SOA system.

背景技术Background technique

现有的面向服务的架构(Service-Oriented Architecture,SOA)系统在各应用之间数据序列化过程中须遵守简单对象访问协议(Simple Object Access Protocol,SOAP),该协议是一种基于可扩展标记语言(Extensible Markup Language,XML)的数据交互协议。The existing service-oriented architecture (Service-Oriented Architecture, SOA) system must comply with the Simple Object Access Protocol (Simple Object Access Protocol, SOAP) in the process of data serialization between applications. Language (Extensible Markup Language, XML) data interaction protocol.

SOA系统内封装的业务流程执行语言(Business Process Execution Language,BPEL)流程对XML进行数据封装和解析时需要耗费的较多时间,这使得SOA系统在面对一些因错误请求而导致的数据超发、关账期数据交互频繁等情况时,会出现系统吞吐率骤降,甚至宕机等情况。The business process execution language (Business Process Execution Language, BPEL) process encapsulated in the SOA system takes a lot of time when encapsulating and parsing XML data, which makes the SOA system face some data overload caused by wrong requests. , frequent data interaction during the closing period, etc., the system throughput rate will drop sharply, or even downtime.

而当SOA系统出现吞吐率骤降,甚至宕机等情况时,现有的SOA系统不会给用户相应的反馈,也没有相应的保护机制,从而影响请求和服务两方的数据交互,用户体验度差。However, when the throughput rate of the SOA system drops sharply, or even goes down, the existing SOA system will not give users corresponding feedback, and there is no corresponding protection mechanism, which affects the data interaction between the request and the service, and the user experience. Poor degree.

发明内容Contents of the invention

本发明提供一种提高SOA系统健壮性的方法和装置,以实现在SOA系统处于拥塞状态时,对SOA系统的服务请求进行缓冲处理,并向服务请求对应的客户端反馈提醒信息,从而提高SOA系统的健壮性,提升客户端的交互体验。The invention provides a method and device for improving the robustness of the SOA system, so as to buffer the service request of the SOA system when the SOA system is in a congested state, and feed back reminder information to the client corresponding to the service request, thereby improving SOA The robustness of the system improves the interactive experience of the client.

第一方面,本发明提供一种提高SOA系统健壮性的方法,包括:In a first aspect, the present invention provides a method for improving the robustness of an SOA system, including:

接收针对面向服务的架构SOA系统的服务请求,并将所述服务请求放入消息队列中;Receive a service request for a service-oriented architecture SOA system, and put the service request into a message queue;

读取所述SOA系统的标志位,并根据所述标志位来确定所述SOA系统的当前状态;Read the flag bit of the SOA system, and determine the current state of the SOA system according to the flag bit;

在所述SOA系统的当前状态为拥塞时,缓冲所述消息队列中的服务请求,并向所述服务请求对应的客户端反馈第一提醒信息。When the current state of the SOA system is congestion, buffer the service request in the message queue, and feed back first reminder information to the client corresponding to the service request.

可选地,所述根据所述标志位来确定所述SOA系统的当前状态之后,还包括:Optionally, after determining the current state of the SOA system according to the flag bit, the method further includes:

在所述SOA系统的当前状态为非拥塞时,判断所述消息队列中是否存在服务请求,若存在,则将所述消息队列头的服务请求递交给所述SOA系统。When the current state of the SOA system is non-congested, it is judged whether there is a service request in the message queue, and if there is, the service request at the head of the message queue is delivered to the SOA system.

可选地,在接收针对面向服务的架构SOA系统的服务请求之前,还包括:Optionally, before receiving the service request for the service-oriented architecture SOA system, it also includes:

获取所述SOA系统的当前运行综合指数,所述运行综合指数包括以下任一:Acquiring the current operation composite index of the SOA system, the operation composite index includes any of the following:

SOA系统当前时刻的中央处理器CPU使用率、内存占用率、服务请求响应时间。The CPU usage rate, memory usage rate, and service request response time of the SOA system at the current moment.

可选地,在获取所述SOA系统的当前运行综合指数之后,还包括:Optionally, after obtaining the current running comprehensive index of the SOA system, it further includes:

判断所述SOA系统的当前运行综合指数是否小于或者等于预设的阈值时,若是,则将服务请求直接递交给所述SOA系统进行处理;When judging whether the current operation comprehensive index of the SOA system is less than or equal to the preset threshold, if so, directly submit the service request to the SOA system for processing;

若否,则判断所述消息队列中是否排满服务请求;If not, it is judged whether the message queue is full of service requests;

在所述消息队列中排满服务请求时,返回当前接收到的服务请求,并向所述服务请求对应的客户端反馈第二提醒消息;When the message queue is full of service requests, return the currently received service request, and feed back a second reminder message to the client corresponding to the service request;

在所述消息队列中未排满服务请求时,确定当前接收到的服务请求是否与排在所述消息队列的尾部的服务请求一致,若一致,则令计数器的值自增1;若不一致,则将当前接收到的服务请求放入所述消息队列的尾部。When the service request is not filled in the message queue, determine whether the currently received service request is consistent with the service request at the tail end of the message queue, if consistent, the value of the counter is incremented by 1; if inconsistent, Then put the currently received service request into the tail of the message queue.

可选地,在确定当前接收到的服务请求与排在所述消息队列的尾部的服务请求一致之后,还包括:Optionally, after determining that the currently received service request is consistent with the service request queued at the tail of the message queue, the method further includes:

获取所述计数器中的数值;Obtain the value in the counter;

在所述计数器中的数值大于预设的上限值时,将所述消息队列尾部的服务请求作为异常服务请求,向所述异常服务请求对应的客户端反馈第三提醒消息;并删除所述消息队列中的所有异常服务请求,计数器中的值清零;When the value in the counter is greater than the preset upper limit value, take the service request at the tail of the message queue as an abnormal service request, and feed back a third reminder message to the client corresponding to the abnormal service request; and delete the For all abnormal service requests in the message queue, the value in the counter is cleared;

在所述计数器中的数值小于或者等于预设的上限值时,将当前接收到的服务请求放入所述消息队列的尾部。When the value in the counter is less than or equal to the preset upper limit value, put the currently received service request at the tail of the message queue.

第二方面,本发明提供一种提高SOA系统健壮性的装置,包括:In a second aspect, the present invention provides a device for improving the robustness of an SOA system, including:

接收模块,用于接收针对面向服务的架构SOA系统的服务请求,并将所述服务请求放入消息队列中;A receiving module, configured to receive a service request for a service-oriented architecture SOA system, and put the service request into a message queue;

确定模块,用于读取所述SOA系统的标志位,并根据所述标志位来确定所述SOA系统的当前状态;A determination module, configured to read the flag bit of the SOA system, and determine the current state of the SOA system according to the flag bit;

处理模块,用于在所述SOA系统的当前状态为拥塞时,缓冲所述消息队列中的服务请求;并向所述服务请求对应的客户端反馈第一提醒信息。A processing module, configured to buffer the service request in the message queue when the current state of the SOA system is congestion; and feed back first reminder information to the client corresponding to the service request.

可选地,所述处理模块,还用于在根据所述标志位来确定所述SOA系统的当前状态之后,在所述SOA系统的当前状态为非拥塞时,判断所述消息队列中是否存在服务请求,若存在,则将所述消息队列头的服务请求递交给所述SOA系统。Optionally, the processing module is further configured to, after determining the current state of the SOA system according to the flag bit, when the current state of the SOA system is non-congested, determine whether there If there is a service request, submit the service request at the head of the message queue to the SOA system.

可选地,还包括:Optionally, also include:

获取模块,用于在接收针对面向服务的架构SOA系统的服务请求之前,获取所述SOA系统的当前运行综合指数,所述运行综合指数包括以下任一:The obtaining module is used to obtain the current operation comprehensive index of the SOA system before receiving the service request for the service-oriented architecture SOA system, and the operation comprehensive index includes any of the following:

SOA系统当前时刻的中央处理器CPU使用率、内存占用率、服务请求响应时间。The CPU usage rate, memory usage rate, and service request response time of the SOA system at the current moment.

可选地,所述处理模块,还用于在获取所述SOA系统的当前运行综合指数之后,判断所述SOA系统的当前运行综合指数是否小于或者等于预设的阈值时,若是,则将服务请求直接递交给所述SOA系统进行处理;Optionally, the processing module is further configured to determine whether the current running comprehensive index of the SOA system is less than or equal to a preset threshold after obtaining the current running comprehensive index of the SOA system, and if so, to serve The request is directly submitted to the SOA system for processing;

若否,则判断所述消息队列中是否排满服务请求;If not, it is judged whether the message queue is full of service requests;

在所述消息队列中排满服务请求时,返回当前接收到的服务请求,并向所述服务请求对应的客户端反馈第二提醒消息;When the message queue is full of service requests, return the currently received service request, and feed back a second reminder message to the client corresponding to the service request;

在所述消息队列中未排满服务请求时,确定当前接收到的服务请求是否与排在所述消息队列的尾部的服务请求一致,若一致,则令计数器的值自增1;若不一致,则将当前接收到的服务请求放入所述消息队列的尾部。When the service request is not filled in the message queue, determine whether the currently received service request is consistent with the service request at the tail end of the message queue, if consistent, the value of the counter is incremented by 1; if inconsistent, Then put the currently received service request into the tail of the message queue.

可选地,所述处理模块,还用于在确定当前接收到的服务请求与排在所述消息队列的尾部的服务请求一致之后,获取所述计数器中的数值;Optionally, the processing module is further configured to acquire the value in the counter after determining that the currently received service request is consistent with the service request queued at the tail of the message queue;

在所述计数器中的数值大于预设的上限值时,将所述消息队列尾部的服务请求作为异常服务请求,向所述异常服务请求对应的客户端反馈第三提醒消息;并删除所述消息队列中的所有异常服务请求,计数器中的值清零;When the value in the counter is greater than the preset upper limit value, take the service request at the tail of the message queue as an abnormal service request, and feed back a third reminder message to the client corresponding to the abnormal service request; and delete the For all abnormal service requests in the message queue, the value in the counter is cleared;

在所述计数器中的数值小于或者等于预设的上限值时,将当前接收到的服务请求放入所述消息队列的尾部。When the value in the counter is less than or equal to the preset upper limit value, put the currently received service request at the tail of the message queue.

第三方面,本发明提供一种提高SOA系统健壮性的设备,包括:In a third aspect, the present invention provides a device for improving the robustness of an SOA system, including:

存储器,用于存储程序;memory for storing programs;

处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行第一方面中任一所述的方法。A processor, configured to execute the program stored in the memory, and when the program is executed, the processor is configured to execute the method in any one of the first aspects.

第四方面,本发明提供一种计算机可读存储介质,包括:指令,当其在计算机上运行时,使得计算机执行第一方面中任一所述的方法。In a fourth aspect, the present invention provides a computer-readable storage medium, including: instructions, which, when run on a computer, cause the computer to execute any method described in the first aspect.

本发明提供的提高SOA系统健壮性的方法和装置,通过接收针对面向服务的架构SOA系统的服务请求,并将所述服务请求放入消息队列中;读取所述SOA系统的标志位,并根据所述标志位来确定所述SOA系统的当前状态;在所述SOA系统的当前状态为拥塞时,缓冲所述消息队列中的服务请求,并向所述服务请求对应的客户端反馈第一提醒信息。实现了在SOA系统处于拥塞状态时,对SOA系统的服务请求进行缓冲处理,并向服务请求对应的客户端反馈提醒信息,从而提高SOA系统的健壮性,提升客户端的交互体验。The method and device for improving the robustness of the SOA system provided by the present invention receive a service request for a service-oriented architecture SOA system, and put the service request into a message queue; read the flag bit of the SOA system, and Determine the current state of the SOA system according to the flag bit; when the current state of the SOA system is congested, buffer the service request in the message queue, and feed back the first message to the client corresponding to the service request reminder message. When the SOA system is in a congested state, the service request of the SOA system is buffered, and the reminder information is fed back to the client corresponding to the service request, thereby improving the robustness of the SOA system and enhancing the interactive experience of the client.

附图说明Description of drawings

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description These are some embodiments of the present invention. For those skilled in the art, other drawings can also be obtained according to these drawings without any creative effort.

图1为本发明提供的一实施例的SOA系统的拓扑结构示意图;Fig. 1 is a schematic diagram of the topology of an SOA system according to an embodiment of the present invention;

图2为本发明实施例一提供的提高SOA系统健壮性的方法的流程图;FIG. 2 is a flowchart of a method for improving the robustness of an SOA system provided by Embodiment 1 of the present invention;

图3为本发明实施例二提供的提高SOA系统健壮性的方法的流程图;FIG. 3 is a flowchart of a method for improving the robustness of an SOA system provided by Embodiment 2 of the present invention;

图4为本发明实施例三提供的提高SOA系统健壮性的方法的流程图;FIG. 4 is a flowchart of a method for improving the robustness of an SOA system provided by Embodiment 3 of the present invention;

图5为本发明实施例四提供的提高SOA系统健壮性的方法的流程图;FIG. 5 is a flowchart of a method for improving the robustness of an SOA system provided by Embodiment 4 of the present invention;

图6为本发明实施例一提供的提高SOA系统健壮性的装置的结构示意图;FIG. 6 is a schematic structural diagram of a device for improving the robustness of an SOA system provided by Embodiment 1 of the present invention;

图7为本发明实施例二提供的提高SOA系统健壮性的装置的结构示意图;FIG. 7 is a schematic structural diagram of a device for improving the robustness of an SOA system provided by Embodiment 2 of the present invention;

图8为本发明实施例一提供的提高SOA系统健壮性的设备的结构示意图。FIG. 8 is a schematic structural diagram of a device for improving the robustness of an SOA system provided by Embodiment 1 of the present invention.

具体实施方式Detailed ways

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments It is a part of embodiments of the present invention, but not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。The terms "first", "second", "third", "fourth", etc. (if any) in the description and claims of the present invention and the above drawings are used to distinguish similar objects and not necessarily Describe a specific order or sequence. It is to be understood that the data so used are interchangeable under appropriate circumstances such that the embodiments of the invention described herein are, for example, capable of practice in sequences other than those illustrated or described herein. Furthermore, the terms "comprising" and "having", as well as any variations thereof, are intended to cover a non-exclusive inclusion, for example, a process, method, system, product or device comprising a sequence of steps or elements is not necessarily limited to the expressly listed instead, may include other steps or elements not explicitly listed or inherent to the process, method, product or apparatus.

下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。The technical solution of the present invention will be described in detail below with specific embodiments. The following specific embodiments may be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments.

以下,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解:Below, some terms in this application are explained, so that those skilled in the art can understand:

1)面向服务的架构(Service-Oriented Architecture,SOA),是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。1) Service-Oriented Architecture (Service-Oriented Architecture, SOA) is a component model that links different functional units (called services) of an application through well-defined interfaces and contracts between these services. The interface is defined in a neutral way, it should be independent of the hardware platform, operating system and programming language that implements the service. This enables services built in a wide variety of systems to interact in a unified and common way.

2)可扩展标记语言(Extensible Markup Language,XML),标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。是Internet环境中跨平台的、依赖于内容的技术,也是当今处理分布式结构信息的有效工具。2) Extensible Markup Language (XML), a subset of the standard general markup language, is a markup language used to mark electronic documents to make them structural. In electronic computers, tags refer to information symbols that computers can understand. Through such tags, computers can process various information such as articles. It can be used to mark data, define data types, and is a source language that allows users to define their own markup language. It is well suited for World Wide Web transport, providing a unified method for describing and exchanging structured data independent of application or vendor. It is a cross-platform and content-dependent technology in the Internet environment, and it is also an effective tool for processing distributed structural information today.

3)简单对象访问协议(Simple Object Access Protocol,SOAP),交换数据的一种协议规范,是一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议,它被设计成在WEB上交换结构化的和固化的信息。3) Simple Object Access Protocol (Simple Object Access Protocol, SOAP), a protocol specification for exchanging data, is a lightweight, simple protocol based on XML (a subset of the Standard Universal Markup Language), which It is designed to exchange structured and fixed information on the WEB.

4)万维网(World Wide Web,WEB),是指网络,表现为三种形式,即超文本(hypertext)、超媒体(hypermedia)、超文本传输协议(HTTP)等。4) The World Wide Web (WEB) refers to the network, which is expressed in three forms, namely hypertext (hypertext), hypermedia (hypermedia), and hypertext transfer protocol (HTTP).

5)业务流程执行语言(Business Process Execution Language,BPEL),是一种使用XML编写的编程语言,可以用于自动化业务流程的形式规约语言。5) Business Process Execution Language (BPEL), which is a programming language written in XML and can be used as a formal specification language for automating business processes.

6)健壮性(Robustness)又称为容错性(Fault Tolerance),用于描述系统在出现故障时,能够自动恢复或者忽略故障继续运行的能力。6) Robustness, also known as Fault Tolerance, is used to describe the ability of the system to automatically recover or ignore the fault and continue to operate when a fault occurs.

现有的企业SOA系统是为了解决在经过30年的信息化建设,许多企业和政府部门都在不同时期、应用不同技术、与不同的厂商合作,建设了不同规模的应用系统造成的信息孤岛太多的问题。以往的局面不是没有数据、而是信息不一致、难以整合不能达到互联互通,解决以上问题是SOA系统的建设目的。SOA承担的任务和主要职责分为以下主要四个方面:(1)指定接入准则(2)外围系统注册(3)服务调用流量控制(4)服务调用并发控制。在承担以上职责的时,SOA要想满足各系统间数据交互要求,理所当然的要处理系统间数据异构的问题。SOA在服务间进行数据交互时,采用基于XML的SOAP进行数据交互,对服务请求和响应的控制和数据的转化功能则由SOA开发者封装在SOA系统中的BPEL控制流来承担,其对请求者的输入和响应者的数据进行转换,从而解决不同系统间数据异构不能达到互联的问题。图1为本发明提供的一实施例的SOA系统的拓扑结构示意图,在硬件层面现有的SOA技术使用三层网络架构,使用硬件负载均衡对外暴露统一网络访问IP,对内为八台生产主机进行服务分发。The existing enterprise SOA system is to solve the information islands caused by the construction of application systems of different scales after 30 years of information construction. many questions. The previous situation was not that there was no data, but that the information was inconsistent, difficult to integrate and unable to achieve interconnection. Solving the above problems is the purpose of SOA system construction. The tasks and main responsibilities undertaken by SOA are divided into the following four main aspects: (1) Specify access criteria (2) Peripheral system registration (3) Service call flow control (4) Service call concurrency control. When assuming the above responsibilities, if SOA wants to meet the data interaction requirements between various systems, it is a matter of course to deal with the problem of data heterogeneity between systems. When SOA performs data interaction between services, it uses XML-based SOAP for data interaction. The control of service requests and responses and the transformation of data are undertaken by the BPEL control flow encapsulated in the SOA system by SOA developers. The input of the responder and the data of the responder are converted, so as to solve the problem that the data heterogeneity between different systems cannot be interconnected. Fig. 1 is a schematic diagram of the topology structure of the SOA system of an embodiment provided by the present invention. At the hardware level, the existing SOA technology uses a three-layer network architecture, uses hardware load balancing to expose a unified network access IP to the outside, and eight production hosts to the inside. For service distribution.

但是,SOA系统内封装的BPEL流程对XML进行数据封装和解析时需要耗费的较多时间,这使得SOA系统在面对一些因错误请求而导致的数据超发、关账期数据交互频繁等情况时,会出现系统吞吐率骤降,甚至宕机等情况。当SOA系统出现吞吐率骤降,甚至宕机等情况时,现有的SOA系统不会给用户相应的反馈,也没有相应的保护机制,从而影响请求和服务两方的数据交互,用户体验度差。However, the BPEL process encapsulated in the SOA system takes a lot of time when encapsulating and parsing XML data, which makes the SOA system face some situations such as oversending data due to wrong requests and frequent data interaction during the closing period. , there will be a sudden drop in system throughput, or even downtime. When the throughput rate of the SOA system drops sharply or even goes down, the existing SOA system will not give the user corresponding feedback, and there is no corresponding protection mechanism, which will affect the data interaction between the request and the service, and the user experience. Difference.

本发明提供的提高SOA系统健壮性的方法,旨在解决现有技术的如上技术问题。The method for improving the robustness of the SOA system provided by the present invention aims to solve the above technical problems in the prior art.

下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。The technical solution of the present invention and how the technical solution of the present application solves the above technical problems will be described in detail below with specific embodiments. The following specific embodiments may be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present invention will be described below with reference to the accompanying drawings.

图2为本发明实施例一提供的提高SOA系统健壮性的方法的流程图,如图2所示,本实施例中的方法可以包括:Fig. 2 is a flow chart of the method for improving the robustness of the SOA system provided by Embodiment 1 of the present invention. As shown in Fig. 2, the method in this embodiment may include:

S101、接收针对面向服务的架构SOA系统的服务请求,并将服务请求放入消息队列中。S101. Receive a service request for a service-oriented architecture SOA system, and put the service request into a message queue.

本是实施例中,通过将针对面向服务的架构SOA系统的服务请求预先放入缓冲池中,通过该缓冲池对服务请求进行管理,当缓冲池中的消息队列未满,且服务请求合法时,将服务请求放入缓冲池的消息队列中。In this embodiment, the service request for the service-oriented architecture SOA system is placed in the buffer pool in advance, and the service request is managed through the buffer pool. When the message queue in the buffer pool is not full and the service request is legal , put the service request into the message queue of the buffer pool.

S102、读取SOA系统的标志位,并根据标志位来确定SOA系统的当前状态。S102. Read the flag bit of the SOA system, and determine the current state of the SOA system according to the flag bit.

本实施例中,首先读取SOA系统的标志位,根据标志位的逻辑值来确定SOA的当前状态。可选地,设置标志位的值为真时,确定SOA系统的当前状态为拥塞状态,在标志位的值为假时,确定SOA系统的当前状态为非拥塞状态。具体地,SOA系统的标志位可以是SOA系统内存的标志位,用于标识内存的占用状态。当内存占用量超过预设的上限值时,内存的标志位的逻辑值为真,否则,内存标志位的逻辑值为假。In this embodiment, the flag bit of the SOA system is read first, and the current state of the SOA is determined according to the logic value of the flag bit. Optionally, when the value of the flag bit is set to true, it is determined that the current state of the SOA system is a congested state, and when the value of the flag bit is false, it is determined that the current state of the SOA system is a non-congested state. Specifically, the flag bit of the SOA system may be a flag bit of the memory of the SOA system, which is used to identify the occupied state of the memory. When the memory usage exceeds the preset upper limit, the logic value of the memory flag bit is true; otherwise, the logic value of the memory flag bit is false.

S103、在SOA系统的当前状态为拥塞时,缓冲消息队列中的服务请求,并向服务请求对应的客户端反馈第一提醒信息。S103. When the current state of the SOA system is congestion, buffer the service request in the message queue, and feed back first reminder information to the client corresponding to the service request.

本是实施例中,当SOA系统的当前状态为拥塞时,与SOA系统通讯连接的缓冲池将接收到的针对所述SOA系统的服务请求进行缓冲,并向服务请求对应的客户端反馈第一提醒信息。其中,第一提醒消息用于提示客户端当前SOA系统繁忙。具体地,例如在频繁出现大数据量请求的情况下,SOA系统会进入拥塞状态时,此时,缓冲池还会对拒绝进入缓冲池的请求进行反馈,并请其稍后再提交请求,从而提高整个SOA系统的交互体验。In this embodiment, when the current state of the SOA system is congested, the buffer pool communicated with the SOA system buffers the received service request for the SOA system, and feeds back the first request to the client corresponding to the service request. reminder message. Wherein, the first reminder message is used to remind the client that the current SOA system is busy. Specifically, for example, when the SOA system enters a congested state in the case of frequent requests for large amounts of data, at this time, the buffer pool will also give feedback to the request that refuses to enter the buffer pool, and ask it to submit the request later, so that Improve the interactive experience of the entire SOA system.

本实施例,通过接收针对面向服务的架构SOA系统的服务请求,并将所述服务请求放入消息队列中;读取所述SOA系统的标志位,并根据所述标志位来确定所述SOA系统的当前状态;在所述SOA系统的当前状态为拥塞时,缓冲所述消息队列中的服务请求,并向所述服务请求对应的客户端反馈第一提醒信息。实现了在SOA系统处于拥塞状态时,对SOA系统的服务请求进行缓冲处理,并向服务请求对应的客户端反馈提醒信息,从而提高SOA系统的健壮性,提升客户端的交互体验。In this embodiment, by receiving a service request for a service-oriented architecture SOA system, and putting the service request into a message queue; reading the flag bit of the SOA system, and determining the SOA according to the flag bit The current state of the system: when the current state of the SOA system is congestion, buffer the service request in the message queue, and feed back first reminder information to the client corresponding to the service request. When the SOA system is in a congested state, the service request of the SOA system is buffered, and the reminder information is fed back to the client corresponding to the service request, thereby improving the robustness of the SOA system and enhancing the interactive experience of the client.

图3为本发明实施例二提供的提高SOA系统健壮性的方法的流程图,如图3所示,本实施例中的方法可以包括:Fig. 3 is a flow chart of the method for improving the robustness of the SOA system provided by Embodiment 2 of the present invention. As shown in Fig. 3, the method in this embodiment may include:

S201、接收针对面向服务的架构SOA系统的服务请求,并将服务请求放入消息队列中。S201. Receive a service request for a service-oriented architecture SOA system, and put the service request into a message queue.

S202、读取SOA系统的标志位,并根据标志位来确定SOA系统的当前状态。S202. Read the flag bit of the SOA system, and determine the current state of the SOA system according to the flag bit.

S203、在SOA系统的当前状态为拥塞时,缓冲消息队列中的服务请求,并向服务请求对应的客户端反馈第一提醒信息。S203. When the current state of the SOA system is congestion, buffer the service request in the message queue, and feed back first reminder information to the client corresponding to the service request.

本实施例中,步骤S201-步骤S203的具体实现过程参见图2所示方法中的相关描述,此处不再赘述。In this embodiment, for the specific implementation process of step S201-step S203, refer to the relevant description in the method shown in FIG. 2 , which will not be repeated here.

S204、在SOA系统的当前状态为非拥塞时,判断所述消息队列中是否存在服务请求,若是,则执行步骤S205,若否,则结束。S204. When the current state of the SOA system is non-congested, judge whether there is a service request in the message queue, if yes, perform step S205, and if not, end.

本实施例中,当SOA系统的当前状态为非拥塞时,获取缓冲池消息队列中的服务请求。In this embodiment, when the current state of the SOA system is non-congested, the service requests in the message queue of the buffer pool are obtained.

S205、将消息队列头的服务请求递交给SOA系统。S205. Submit the service request at the head of the message queue to the SOA system.

本实施例中的消息队列是双向队列,一端设置为列头,一端设置为列尾,接收到的服务请求按照接收的时间顺序依次排在消息队列的尾部位置,缓冲池按照消息队列中服务请求的顺序将排在列头的服务请求递交给SOA系统。The message queue in this embodiment is a two-way queue, one end is set as the head of the column, and the other end is set as the tail of the column. The received service requests are arranged at the tail of the message queue in sequence according to the time they are received, and the buffer pool is arranged according to the service requests in the message queue. Submit the service requests at the head of the column to the SOA system in the order of order.

本实施例,通过缓冲池的消息队列来缓冲接收到的服务请求,并按照缓冲池消息队列中的服务请求的排列顺序,将排在列头的服务请求递交给SOA系统。从而实现了对SOA系统服务请求的缓冲处理,并使得SOA系统按照服务请求的接收顺序进行处理,避免服务请求等待处理的时间过长。In this embodiment, the received service requests are buffered through the message queue of the buffer pool, and the service request at the head of the queue is delivered to the SOA system according to the arrangement order of the service requests in the message queue of the buffer pool. Therefore, the buffer processing of the service request of the SOA system is realized, and the SOA system is processed according to the order in which the service request is received, so as to prevent the service request from waiting for processing for too long.

图4为本发明实施例三提供的提高SOA系统健壮性的方法的流程图,如图4所示,本实施例中的方法可以包括:FIG. 4 is a flowchart of a method for improving the robustness of an SOA system provided by Embodiment 3 of the present invention. As shown in FIG. 4, the method in this embodiment may include:

S301、获取SOA系统的当前运行综合指数。S301. Obtain the current operation comprehensive index of the SOA system.

本实施例中,可以通过SOA系统当前时刻的中央处理器CPU使用率、内存占用率、服务请求响应时间中的任一参数来评估SOA系统的当前运行综合指数。In this embodiment, the current running comprehensive index of the SOA system can be evaluated by any parameter among the CPU usage rate of the SOA system at the current moment, the memory usage rate, and the service request response time.

S302、判断SOA系统的当前运行综合指数是否小于或者等于预设的阈值,若否,则执行步骤S 303;若是,则执行步骤S304。S302. Determine whether the current operation comprehensive index of the SOA system is less than or equal to a preset threshold, if not, execute step S303; if yes, execute step S304.

S303、判断消息队列中是否排满服务请求,若是,则执行步骤S305;若否,则执行步骤S306。S303. Determine whether the message queue is full of service requests, if yes, execute step S305; if not, execute step S306.

本实施例中,首先对缓冲池中的消息队列进行检测,判断该消息队列中是否排满服务请求。可选地,消息队列可以是一个先入先出的寄存器(First In First Out,FIFO)。In this embodiment, firstly, the message queue in the buffer pool is detected to determine whether the message queue is full of service requests. Optionally, the message queue may be a first-in-first-out register (First In First Out, FIFO).

S304、将服务请求直接递交给SOA系统进行处理。S304, directly submit the service request to the SOA system for processing.

S305、返回当前接收到的服务请求,并向所述服务请求对应的客户端反馈第二提醒消息。S305. Return the currently received service request, and feed back a second reminder message to the client corresponding to the service request.

本实施例中,当缓冲池中的消息队列排满服务请求时,缓冲池将当前接收到的服务请求退回给对应的客户端,并向所述服务请求对应的客户端反馈第二提醒消息。其中,第二提醒消息用于提示客户端当前SOA系统繁忙,请稍后再提交服务请求。In this embodiment, when the message queue in the buffer pool is full of service requests, the buffer pool returns the currently received service request to the corresponding client, and feeds back a second reminder message to the client corresponding to the service request. Wherein, the second reminder message is used to remind the client that the current SOA system is busy, please submit the service request later.

S306、确定当前接收到的服务请求是否与排在所述消息队列的尾部的服务请求一致;若是,则执行步骤S307;若否,则执行步骤S308。S306. Determine whether the currently received service request is consistent with the service request at the tail of the message queue; if yes, perform step S307; if not, perform step S308.

本实施例中,当缓冲池中的消息队列未排满服务请求时,进一步判断缓冲池当前接收到的服务请求是否与该消息队列尾部的服务请求一致。In this embodiment, when the message queue in the buffer pool is not full of service requests, it is further determined whether the service request currently received by the buffer pool is consistent with the service request at the end of the message queue.

S307、令计数器的值自增1。S307. Increase the value of the counter by 1.

本实施例中,通过计数器来统计接收到与消息队列尾部的服务请求一致的服务请求次数。In this embodiment, a counter is used to count the number of service requests received that are consistent with the service requests at the tail of the message queue.

S308、将当前接收到的服务请求放入消息队列的尾部。S308. Put the currently received service request at the tail of the message queue.

本实施例,通过SOA系统的当前运行综合指数是否小于或者等于预设的阈值,在所述当前运行综合指数大于预设的阈值时,进一步判断缓冲池中的消息队列是否排满服务请求;若消息队列排满服务请求,则返回当前接收到的服务请求,并向服务请求对应的客户端反馈第二提醒消息。因此,在一定程度上,减少SOA系统的处理负荷,当SOA出现系统宕机时不可访问等情况时,缓冲池可以缓冲部分服务请求,当缓冲池消息队列排满服务请求时,缓冲池也可以及时地退回当前接收到的服务请求,并对该服务请求对应的客户端进行提醒,提升了客户端的交互体验。另外,本实施例,还通过计数器来统计重复接收到的服务请求的次数,实现对接收到的服务请求的监管。In this embodiment, according to whether the current running comprehensive index of the SOA system is less than or equal to the preset threshold, when the current running comprehensive index is greater than the preset threshold, it is further judged whether the message queue in the buffer pool is full of service requests; if When the message queue is full of service requests, the currently received service request is returned, and a second reminder message is fed back to the client corresponding to the service request. Therefore, to a certain extent, the processing load of the SOA system is reduced. When the SOA is inaccessible when the system is down, the buffer pool can buffer some service requests. When the buffer pool message queue is full of service requests, the buffer pool can also The currently received service request is returned in a timely manner, and the client corresponding to the service request is reminded, thereby improving the interactive experience of the client. In addition, in this embodiment, a counter is also used to count the number of times the received service request is repeated, so as to realize the supervision of the received service request.

图5为本发明实施例四提供的提高SOA系统健壮性的方法的流程图,如图5所示,在图4所示方法的基础上,本实施例中的方法可以包括:FIG. 5 is a flowchart of a method for improving the robustness of an SOA system provided by Embodiment 4 of the present invention. As shown in FIG. 5 , on the basis of the method shown in FIG. 4 , the method in this embodiment may include:

S401、获取所述计数器中的数值。S401. Obtain a value in the counter.

S402、在计数器中的数值大于预设的上限值时,将消息队列尾部的服务请求作为异常服务请求,向异常服务请求对应的客户端反馈第三提醒消息;并删除消息队列中的所有异常服务请求,计数器中的值清零。S402. When the value in the counter is greater than the preset upper limit, take the service request at the end of the message queue as an abnormal service request, and feed back a third reminder message to the client corresponding to the abnormal service request; and delete all abnormalities in the message queue Service request, the value in the counter is cleared to zero.

本实施例中,当获取到的计数器中的值大于预设的上限值时,说明一直在接收重复的服务请求,此时,将将消息队列尾部的服务请求作为异常服务请求,向异常服务请求对应的客户端反馈第三提醒消息。其中,第三提醒消息用于提醒客户端核查服务请求。并且删除消息队列中的所有异常服务请求,计数器中的值清零。In this embodiment, when the value in the obtained counter is greater than the preset upper limit value, it means that repeated service requests have been received. At this time, the service request at the end of the message queue will be regarded as an abnormal service The corresponding client is requested to feed back the third reminder message. Wherein, the third reminder message is used to remind the client to check the service request. And delete all abnormal service requests in the message queue, and clear the value in the counter.

S403、在计数器中的数值小于或者等于预设的上限值时,将当前接收到的服务请求放入所述消息队列的尾部。S403. When the value in the counter is less than or equal to the preset upper limit value, put the currently received service request at the tail of the message queue.

本实施例,通过计数器来监管缓冲池接收到的服务请求,当获取到的计数器中的值大于预设的上限值时,说明一直在接收重复的服务请求,此时,将将消息队列尾部的服务请求作为异常服务请求,向异常服务请求对应的客户端反馈第三提醒消息。从而避免异常服务请求占据缓冲池的消息队列的资源,减少异常服务请求对SOA系统的冲击,提高SOA系统的可靠性。In this embodiment, counters are used to supervise the service requests received by the buffer pool. When the value of the obtained counter is greater than the preset upper limit value, it means that repeated service requests have been received. At this time, the message queue tail The service request is regarded as an abnormal service request, and a third reminder message is fed back to the client corresponding to the abnormal service request. In this way, the abnormal service request is prevented from occupying the resources of the message queue of the buffer pool, the impact of the abnormal service request on the SOA system is reduced, and the reliability of the SOA system is improved.

图6为本发明实施例一提供的提高SOA系统健壮性的装置的结构示意图,如图6所示,本实施例中的装置,可以包括:FIG. 6 is a schematic structural diagram of a device for improving the robustness of an SOA system provided by Embodiment 1 of the present invention. As shown in FIG. 6, the device in this embodiment may include:

接收模块10,用于接收针对面向服务的架构SOA系统的服务请求,并将所述服务请求放入消息队列中;The receiving module 10 is configured to receive a service request for a service-oriented architecture SOA system, and put the service request into a message queue;

确定模块20,用于读取所述SOA系统的标志位,并根据所述标志位来确定所述SOA系统的当前状态;A determining module 20, configured to read the flag bit of the SOA system, and determine the current state of the SOA system according to the flag bit;

处理模块30,用于在所述SOA系统的当前状态为拥塞时,缓冲所述消息队列中的服务请求;并向所述服务请求对应的客户端反馈第一提醒信息。The processing module 30 is configured to buffer the service request in the message queue when the current state of the SOA system is congestion; and feed back first reminder information to the client corresponding to the service request.

可选地,所述处理模块30,还用于在根据所述标志位来确定所述SOA系统的当前状态之后,在所述SOA系统的当前状态为非拥塞时,判断所述消息队列中是否存在服务请求,若存在,则将所述消息队列头的服务请求递交给所述SOA系统。Optionally, the processing module 30 is further configured to, after determining the current state of the SOA system according to the flag bit, when the current state of the SOA system is non-congested, determine whether the message queue is There is a service request, and if so, the service request at the head of the message queue is delivered to the SOA system.

可选地,所述处理模块30,还用于在获取所述SOA系统的当前运行综合指数之后,判断所述SOA系统的当前运行综合指数是否小于或者等于预设的阈值时,若是,则将服务请求直接递交给所述SOA系统进行处理;Optionally, the processing module 30 is further configured to determine whether the current running comprehensive index of the SOA system is less than or equal to a preset threshold after obtaining the current running comprehensive index of the SOA system, and if so, set The service request is directly submitted to the SOA system for processing;

若否,则判断所述消息队列中是否排满服务请求;If not, it is judged whether the message queue is full of service requests;

在所述消息队列中排满服务请求时,返回当前接收到的服务请求,并向所述服务请求对应的客户端反馈第二提醒消息;When the message queue is full of service requests, return the currently received service request, and feed back a second reminder message to the client corresponding to the service request;

在所述消息队列中未排满服务请求时,确定当前接收到的服务请求是否与排在所述消息队列的尾部的服务请求一致,若一致,则令计数器的值自增1;若不一致,则将当前接收到的服务请求放入所述消息队列的尾部。When the service request is not filled in the message queue, determine whether the currently received service request is consistent with the service request at the tail end of the message queue, if consistent, the value of the counter is incremented by 1; if inconsistent, Then put the currently received service request into the tail of the message queue.

可选地,所述处理模块30,还用于在确定当前接收到的服务请求与排在所述消息队列的尾部的服务请求一致之后,获取所述计数器中的数值;Optionally, the processing module 30 is further configured to acquire the value in the counter after determining that the currently received service request is consistent with the service request queued at the tail of the message queue;

在所述计数器中的数值大于预设的上限值时,将所述消息队列尾部的服务请求作为异常服务请求,向所述异常服务请求对应的客户端反馈第三提醒消息;并删除所述消息队列中的所有异常服务请求,计数器中的值清零;When the value in the counter is greater than the preset upper limit value, take the service request at the tail of the message queue as an abnormal service request, and feed back a third reminder message to the client corresponding to the abnormal service request; and delete the For all abnormal service requests in the message queue, the value in the counter is cleared;

在所述计数器中的数值小于或者等于预设的上限值时,将当前接收到的服务请求放入所述消息队列的尾部。When the value in the counter is less than or equal to the preset upper limit value, put the currently received service request at the tail of the message queue.

本实施例可以执行上述图2-图5所示的方法中的技术方案,其实现过程和技术效果与上述方法类似,此处不再赘述。This embodiment can execute the technical solutions in the methods shown in FIGS. 2-5 above, and its implementation process and technical effects are similar to those of the above methods, and will not be repeated here.

图7为本发明实施例二提供的提高SOA系统健壮性的装置的结构示意图,如图7所示,在图6所示装置的基础上,本实施例中的装置还可以包括:FIG. 7 is a schematic structural diagram of a device for improving the robustness of an SOA system provided by Embodiment 2 of the present invention. As shown in FIG. 7 , on the basis of the device shown in FIG. 6 , the device in this embodiment may further include:

获取模块40,用于在接收针对面向服务的架构SOA系统的服务请求之前,获取所述SOA系统的当前运行综合指数,所述运行综合指数包括以下任一:The obtaining module 40 is used to obtain the current operation comprehensive index of the SOA system before receiving the service request for the service-oriented architecture SOA system, and the operation comprehensive index includes any of the following:

SOA系统当前时刻的中央处理器CPU使用率、内存占用率、服务请求响应时间。The CPU usage rate, memory usage rate, and service request response time of the SOA system at the current moment.

本实施例可以执行上述图2-图5所示的方法中的技术方案,其实现过程和技术效果与上述方法类似,此处不再赘述。This embodiment can execute the technical solutions in the methods shown in FIGS. 2-5 above, and its implementation process and technical effects are similar to those of the above methods, and will not be repeated here.

图8为本发明实施例一提供的提高SOA系统健壮性的设备的结构示意图,如图8所示,本实施例中的设备,可以包括:FIG. 8 is a schematic structural diagram of a device for improving the robustness of an SOA system provided by Embodiment 1 of the present invention. As shown in FIG. 8, the device in this embodiment may include:

存储器50,用于存储程序;memory 50 for storing programs;

处理器60,用于执行所述存储器50存储的所述程序,当所述程序被执行时,所述处理器60用于执行上述图2-图5所示的方法中的技术方案。The processor 60 is configured to execute the program stored in the memory 50. When the program is executed, the processor 60 is configured to execute the technical solutions in the methods shown in FIGS. 2-5.

本实施例可以执行上述图2-图5所示的方法中的技术方案,其实现过程和技术效果与上述方法类似,此处不再赘述。This embodiment can execute the technical solutions in the methods shown in FIGS. 2-5 above, and its implementation process and technical effects are similar to those of the above methods, and will not be repeated here.

此外,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当用户设备的至少一个处理器执行该计算机执行指令时,用户设备执行上述各种可能的方法。In addition, an embodiment of the present application also provides a computer-readable storage medium, in which computer-executable instructions are stored. When at least one processor of the user equipment executes the computer-executable instructions, the user equipment executes the above-mentioned various possibilities. Methods.

其中,计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于通信设备中。Among other things, computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. Of course, the storage medium may also be a component of the processor. The processor and storage medium can be located in the ASIC. Additionally, the ASIC may be located in the user equipment. Of course, the processor and the storage medium can also exist in the communication device as discrete components.

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。Those of ordinary skill in the art can understand that all or part of the steps for implementing the above method embodiments can be completed by program instructions and related hardware. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps including the above-mentioned method embodiments; and the aforementioned storage medium includes: ROM, RAM, magnetic disk or optical disk and other various media that can store program codes.

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present invention, rather than limiting them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: It is still possible to modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements for some or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the technical solutions of the various embodiments of the present invention. scope.

Claims (10)

  1. A kind of 1. method for improving SOA system robustness, which is characterized in that including:
    The service request for Enterprise SOA SOA systems is received, and the service request is put into message queue;
    The flag bit of the SOA systems is read, and the current state of the SOA systems is determined according to the flag bit;
    When the current state of the SOA systems is congestion, the service request in the message queue is buffered, and to the service Ask corresponding the first prompting message of client feedback.
  2. 2. according to the method described in claim 1, it is characterized in that, described determine the SOA systems according to the flag bit Current state after, further include:
    When the current state of the SOA systems is non-congested, judge with the presence or absence of service request in the message queue, if depositing The service request of the message queue head is then being submitted to the SOA systems.
  3. 3. according to the method described in claim 1, it is characterized in that, receiving the clothes for Enterprise SOA SOA systems Before business request, further include:
    The current operation composite index of the SOA systems is obtained, the operation composite index includes following any:
    The central processor CPU utilization rate at SOA system current times, memory usage, service request response time.
  4. 4. according to the method described in claim 3, it is characterized in that, in the current operation composite index for obtaining the SOA systems Later, it further includes:
    When judging whether the current operation composite index of the SOA systems is less than or equal to preset threshold value, if so, will clothes Business request is directly submitted to the SOA systems and is handled;
    If it is not, then judge whether be booked service request in the message queue;
    When being booked service request in the message queue, the service request being currently received is returned to, and to the service request Corresponding the second reminder message of client feedback;
    When not being booked service request in the message queue, determine the service request being currently received whether with coming described disappear The service request for ceasing the tail portion of queue is consistent, if unanimously, the value of counter is enabled to increase 1 certainly;If inconsistent, will be currently received Service request be put into the tail portion of the message queue.
  5. 5. it according to the method described in claim 4, it is characterized in that, in the service request for determining to be currently received and comes described After the service request of the tail portion of message queue is consistent, further include:
    Obtain the numerical value in the counter;
    When numerical value in the counter is more than preset upper limit value, using the service request of the message queue tail portion as different Normal service request asks corresponding client feedback third reminder message to the exception service;And delete the message queue In the request of all exception services, the value in counter resets;
    When numerical value in the counter is less than or equal to preset upper limit value, the service request being currently received is put into The tail portion of the message queue.
  6. 6. a kind of device for improving SOA system robustness, which is characterized in that including:
    Receiving module for receiving the service request for Enterprise SOA SOA systems, and the service request is put into In message queue;
    Determining module for reading the flag bit of the SOA systems, and determines the SOA systems according to the flag bit Current state;
    Processing module, for when the current state of the SOA systems is congestion, the service buffered in the message queue please It asks;And to corresponding the first prompting message of client feedback of the service request.
  7. 7. device according to claim 6, which is characterized in that
    The processing module is additionally operable to after the current state that the SOA systems are determined according to the flag bit, described When the current state of SOA systems is non-congested, judge with the presence or absence of service request in the message queue, if in the presence of by institute The service request for stating message queue head is submitted to the SOA systems.
  8. 8. device according to claim 6, which is characterized in that further include:
    Acquisition module, for before the service request for Enterprise SOA SOA systems is received, obtaining the SOA systems The current operation composite index of system, the operation composite index include following any:
    The central processor CPU utilization rate at SOA system current times, memory usage, service request response time.
  9. 9. device according to claim 8, which is characterized in that
    The processing module is additionally operable to after the current operation composite index of the SOA systems is obtained, judges the SOA systems When whether the current operation composite index of system is less than or equal to preset threshold value, if so, service request is directly submitted to The SOA systems are handled;
    If it is not, then judge whether be booked service request in the message queue;
    When being booked service request in the message queue, the service request being currently received is returned to, and to the service request Corresponding the second reminder message of client feedback;
    When not being booked service request in the message queue, determine the service request being currently received whether with coming described disappear The service request for ceasing the tail portion of queue is consistent, if unanimously, the value of counter is enabled to increase 1 certainly;If inconsistent, will be currently received Service request be put into the tail portion of the message queue.
  10. 10. device according to claim 9, which is characterized in that
    The processing module is additionally operable to the clothes in the service request for determining to be currently received and the tail portion for coming the message queue After business request is consistent, the numerical value in the counter is obtained;
    When numerical value in the counter is more than preset upper limit value, using the service request of the message queue tail portion as different Normal service request asks corresponding client feedback third reminder message to the exception service;And delete the message queue In the request of all exception services, the value in counter resets;
    When numerical value in the counter is less than or equal to preset upper limit value, the service request being currently received is put into The tail portion of the message queue.
CN201711401065.7A 2017-12-22 2017-12-22 The method and apparatus for improving SOA system robustness Pending CN108234349A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711401065.7A CN108234349A (en) 2017-12-22 2017-12-22 The method and apparatus for improving SOA system robustness

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711401065.7A CN108234349A (en) 2017-12-22 2017-12-22 The method and apparatus for improving SOA system robustness

Publications (1)

Publication Number Publication Date
CN108234349A true CN108234349A (en) 2018-06-29

Family

ID=62648465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711401065.7A Pending CN108234349A (en) 2017-12-22 2017-12-22 The method and apparatus for improving SOA system robustness

Country Status (1)

Country Link
CN (1) CN108234349A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547282A (en) * 2018-10-22 2019-03-29 中国平安人寿保险股份有限公司 Overload protection method, device, computer readable storage medium and server

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1909552A (en) * 2006-08-15 2007-02-07 华为技术有限公司 Information calling method and system
TW201140471A (en) * 2010-05-04 2011-11-16 Chunghwa Telecom Co Ltd SOA service quality real-time analysis and warning system and method
CN103034735A (en) * 2012-12-26 2013-04-10 北京讯鸟软件有限公司 Big data distributed file export method
CN104995880A (en) * 2013-03-15 2015-10-21 国际商业机器公司 Quantized congestion notification in a virtual networking system
CN105224445A (en) * 2015-10-28 2016-01-06 北京汇商融通信息技术有限公司 Distributed tracking system
US20160182326A1 (en) * 2014-12-19 2016-06-23 Oracle International Corporation Techniques for determining queue backlogs, active counts, and external system interactions in asynchronous systems
CN105872110A (en) * 2016-06-17 2016-08-17 深圳纽博时代科技有限公司 Cloud platform service management method and cloud platform service management device
CN107317763A (en) * 2017-06-30 2017-11-03 郑州云海信息技术有限公司 Flow control method and device between a kind of client and meta data server

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1909552A (en) * 2006-08-15 2007-02-07 华为技术有限公司 Information calling method and system
TW201140471A (en) * 2010-05-04 2011-11-16 Chunghwa Telecom Co Ltd SOA service quality real-time analysis and warning system and method
CN103034735A (en) * 2012-12-26 2013-04-10 北京讯鸟软件有限公司 Big data distributed file export method
CN104995880A (en) * 2013-03-15 2015-10-21 国际商业机器公司 Quantized congestion notification in a virtual networking system
US20160182326A1 (en) * 2014-12-19 2016-06-23 Oracle International Corporation Techniques for determining queue backlogs, active counts, and external system interactions in asynchronous systems
CN105224445A (en) * 2015-10-28 2016-01-06 北京汇商融通信息技术有限公司 Distributed tracking system
CN105872110A (en) * 2016-06-17 2016-08-17 深圳纽博时代科技有限公司 Cloud platform service management method and cloud platform service management device
CN107317763A (en) * 2017-06-30 2017-11-03 郑州云海信息技术有限公司 Flow control method and device between a kind of client and meta data server

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547282A (en) * 2018-10-22 2019-03-29 中国平安人寿保险股份有限公司 Overload protection method, device, computer readable storage medium and server

Similar Documents

Publication Publication Date Title
CN107729139B (en) Method and device for concurrently acquiring resources
CN109729106B (en) Method, system and computer program product for processing computing tasks
CN104951357B (en) The management method and protocol stack system of concurrent user state protocol stack
US20070263650A1 (en) Method for prioritizing web service requests
CN104932932B (en) A kind of business asynchronous processing method, device and system
US20190140982A1 (en) Communication Methods and Systems, Electronic Devices, and Computer Clusters
CN111104210A (en) Task processing method and device and computer system
CN111427694A (en) Task execution method, device, system and server
CN109818810A (en) An access server connection optimization method, access server and communication system
CN104052677B (en) The soft load-balancing method and device of data mapping
US11294740B2 (en) Event to serverless function workflow instance mapping mechanism
CN112799824A (en) A current limiting method, apparatus, device and storage medium
JP6169081B2 (en) System and method for providing dynamic invocation and service interfaces for use in middleware or other environments
CN105827671A (en) System platform characterized by distributed use and centralized management and portal server
US10489179B1 (en) Virtual machine instance data aggregation based on work definition metadata
US8250205B2 (en) Business process management system, method thereof, process management computer and program thereof
CN111343239B (en) Communication request processing method, communication request processing device and transaction system
CN109117278A (en) A kind of mobile terminal and its method for limiting, the storage medium of interprocess communication
CN109032812A (en) A kind of mobile terminal and its method for limiting, the storage medium of interprocess communication
CN107294911B (en) Data packet monitoring method and device, remote procedure call system and equipment
US9021109B1 (en) Controlling requests through message headers
CN106570011B (en) Distributed crawler URL seed distribution method, scheduling node and capturing node
CN108234349A (en) The method and apparatus for improving SOA system robustness
US20130339984A1 (en) System and method for realtime detection of process disruptions in event-driven architectures
CN108984321A (en) A kind of mobile terminal and its method for limiting, the storage medium of interprocess communication

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180629