CN112822080B - 一种基于soa架构的总线系统 - Google Patents
一种基于soa架构的总线系统 Download PDFInfo
- Publication number
- CN112822080B CN112822080B CN202011633659.2A CN202011633659A CN112822080B CN 112822080 B CN112822080 B CN 112822080B CN 202011633659 A CN202011633659 A CN 202011633659A CN 112822080 B CN112822080 B CN 112822080B
- Authority
- CN
- China
- Prior art keywords
- module
- service
- esb
- request
- bus system
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于SOA架构的总线系统,包括:代理分发模块,根据最大连接数接收或拒绝服务调用方发出的请求;流量控制模块,为代理分发模块的请求分发令牌,回收已经结束的请求的令牌,拦截没有令牌的请求;ESB模块,用于完成服务调用方发出的请求;监控模块,用于监控各个ESB模块的运行状态;服务管理模块,与各个ESB模块连接,服务发布方通过服务管理模块发布服务。与现有技术相比,本发明在代理转发模块和流量控制模块分别进行一次流量控制,可以对ESB模块的流量和压力大小进行限制,可以根据服务提供方的能力大小限制服务的流量,从而提高了系统的稳定性。
Description
技术领域
本发明涉及网络技术领域,尤其是涉及一种基于SOA架构的总线系统。
背景技术
ESB(Enterprise Service Bus,企业服务总线)为分散服务提供了交互、组合和治理的基础架构,是SOA(Service Oriented Architecture,面向服务架构)的核心技术。SOA将各种业务功能封装成一个个相对独立的服务,ESB连接各个服务节点,实现不同系统间服务的调用与管理。服务发布方将服务发布之后,服务调用方可以调用已经被发布的服务,但是,在使用过程中,在同一时间可能有多个服务调用方请求调用不同的服务,也有可能多个服务调用方请求调用同一个服务,因此必须进行流量管理,以防止过多的访问导致系统崩溃,或占用过多的资源,对系统的正常运行造成影响。
中国专利CN201110077632.4公开了一种基于ESB的流量控制方法,通过信号池进行全局流量控制和单个服务流量控制,但是,当有多个ESB模块时,该方法的实现步骤较为复杂,难以很好的进行流量调控。
此外,现有的SOA架构侧重点不同,但普遍缺少故障隔离方面的设计,中国专利CN201610122753.9公开了一种基于SOA架构的数据集成交换平台,实现了“面向服务”的系统集成,做到了故障隔离,一个系统出现问题,不会影响到其它系统的正常运行;充分改善了系统稳定性、可扩展性,但实现故障隔离的设计较复杂。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于SOA架构的总线系统,在代理转发模块和流量控制模块分别进行一次流量控制,可以对ESB模块的流量和压力大小进行限制,可以根据服务提供方的能力大小限制服务的流量,从而提高了系统的稳定性。
本发明的目的可以通过以下技术方案来实现:
一种基于SOA架构的总线系统,包括:
代理分发模块,提供多种接入方式,根据预设置的最大连接数接收服务调用方发出的请求或拒绝服务调用方发出的请求,并将接收的请求通过流量控制模块转发至各个ESB模块;
流量控制模块,与代理分发模块连接,为代理分发模块的请求分发令牌,回收已经结束的请求的令牌,将有令牌的请求发送至ESB模块,拦截没有令牌的请求;
ESB模块,ESB模块的数量至少为1个,各个ESB模块分别连接至流量控制模块,ESB模块用于完成服务调用方发出的请求;
监控模块,与流量控制模块和各个ESB模块连接,用于监控各个ESB模块的运行状态;
服务管理模块,与各个ESB模块连接,服务发布方通过服务管理模块发布服务。
进一步的,所述总线系统还包括平台管理模块,平台管理模块用于管理ESB模块,所述服务管理模块通过平台管理模块与各个ESB模块连接,服务管理模块的数据通过平台管理模块发送至各个ESB模块。
进一步的,所述预设置的最大连接数包括总线系统的最大连接数和各个ESB模块的最大连接数。
进一步的,所述代理分发模块将接收的请求通过流量控制模块转发至各个ESB模块具体为:
代理分发模块获取请求的路径和请求头,根据预设置的路由策略,将请求转发至ESB模块。
更进一步的,所述代理分发模块将请求转发至ESB模块之前,还包括:根据预设置的识别策略,判断请求是否对应故障服务,若为是,则将请求转发至预设置的故障服务ESB模块。
进一步的,所述流量控制模块分发、回收令牌具体为:
对于不同的服务,分别设置每种服务的令牌数;对于代理分发模块的请求,若该请求所对应的服务的令牌数不等于0,则为该请求分发一个令牌,该请求发送至ESB模块,令牌数减1,若该请求所对应的服务的令牌数等于0,则该请求停止发送,直至该请求被分发到一个令牌;若一个请求在ESB模块被完成,则该请求所对应的服务的令牌数加1。
进一步的,所述ESB模块用于完成服务调用方发出的请求,包括:服务的动态路由、访问控制、报文格式转换、编码转换、超时控制。
更进一步的,所述ESB模块包括消息中间件模块,用于实现各个ESB模块之间、ESB模块与平台管理模块之间的消息异步传输。
进一步的,所述监控模块根据预设置的监控规则对各个ESB模块的运行状态进行监控,并将监控结构发送至代理分发模块。
进一步的,所述服务管理模块还用于:服务发布、服务地址修改、服务访问关系管理、服务IP白名单管理、服务下线管理。
与现有技术相比,本发明具有以下有益效果:
(1)在代理转发模块和流量控制模块分别进行一次流量控制,可以对ESB模块的流量和压力大小进行限制,可以根据服务提供方的能力大小限制服务的流量,从而提高了系统的稳定性。
(2)在ESB模块之外的进行流量控制,在高并发之下,如果流量控制节点出现故障,不至于拖垮ESB节点而影响业务。
(3)可以在代理分发模块进行策略配置,将故障服务转发至单独的ESB节点,并停止转发请求至出现故障的ESB模块。
(4)通过服务管理平台发布服务、管理服务,可以快速处理与服务相关的事务,保障服务的质量。
附图说明
图1为本发明的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例1:
一种基于SOA架构的总线系统,如图1所示,包括代理分发模块、流量控制模块、ESB模块、监控模块、服务管理模块、平台管理模块。
代理分发模块,提供多种接入方式,根据预设置的最大连接数接收服务调用方发出的请求或拒绝服务调用方发出的请求,并将接收的请求通过流量控制模块转发至各个ESB模块;预设置的最大连接数包括总线系统的最大连接数和各个ESB模块的最大连接数。
代理分发模块将接收的请求通过流量控制模块转发至各个ESB模块具体为:代理分发模块获取请求的路径和请求头,根据预设置的路由策略,将请求转发至ESB模块。
代理分发模块将请求转发至ESB模块之前,还包括:根据预设置的识别策略,判断请求是否对应故障服务,若为是,则将请求转发至预设置的故障服务ESB模块。
流量控制模块,与代理分发模块连接,为代理分发模块的请求分发令牌,回收已经结束的请求的令牌,将有令牌的请求发送至ESB模块,拦截没有令牌的请求;
流量控制模块分发、回收令牌具体为:
对于不同的服务,分别设置每种服务的令牌数;对于代理分发模块的请求,若该请求所对应的服务的令牌数不等于0,则为该请求分发一个令牌,该请求发送至ESB模块,令牌数减1,若该请求所对应的服务的令牌数等于0,则该请求停止发送,直至该请求被分发到一个令牌;若一个请求在ESB模块被完成,则该请求所对应的服务的令牌数加1。
ESB模块,ESB模块的数量至少为1个,各个ESB模块分别连接至流量控制模块,ESB模块用于完成服务调用方发出的请求;ESB模块用于完成服务调用方发出的请求,包括:服务的动态路由、访问控制、报文格式转换、编码转换、超时控制。
ESB模块包括消息中间件模块,用于实现各个ESB模块之间、ESB模块与平台管理模块之间的消息异步传输。
监控模块,与流量控制模块和各个ESB模块连接,用于监控各个ESB模块的运行状态;监控模块根据预设置的监控规则对各个ESB模块的运行状态进行监控,并将监控结构发送至代理分发模块。
服务管理模块,与各个ESB模块连接,服务发布方通过服务管理模块发布服务;服务管理模块还用于:服务发布、服务地址修改、服务访问关系管理、服务IP白名单管理、服务下线管理。
平台管理模块,平台管理模块用于管理ESB模块,服务管理模块通过平台管理模块与各个ESB模块连接,服务管理模块的数据通过平台管理模块发送至各个ESB模块。
在使用时,代理分发模块面向服务调用方,提供统一的入口,对于超出最大连接数的请求做拒绝处理,完成一次流量控制。在代理分发模块,根据请求的路径和请求头,将请求转发至对应的ESB模块;如果有问题服务,则代理分发模块将其转发至单独的ESB模块,以减少对系统的影响。
流量控制模块通过令牌对每种服务进行流量控制,以免多个服务调用方同时请求调用同一个服务,保证了系统的稳定性。可以根据服务提供方的能力大小和每种服务的占用资源,分别设置每种服务的令牌数。按照先来先分配原则,对于先到的请求先分发令牌,对于没有令牌的请求,则拦截该请求,完成一次流量控制。
ESB模块的数量有多个,用于实现真正的业务逻辑处理。
通过服务管理模块,服务发布方发布注册一个或多个协议,每个协议代表一种访问方式和一个后端服务提供地址,一个协议可被多个服务使用。服务发布方可发布一个或多个服务,可对服务的并发数进行限制,也就是设置每种服务的令牌数。服务发布方发布服务之后,系统启动一个工作流程,相关责任人或管理人可登陆统一的WEB界面,进行服务审批与部署。服务完成部署后,服务调用方可在统一的WEB界面通过平台进行服务访问请求,请求访问该服务。此外,还可以设置IP白名单,只有在IP白名单上的用户发出的请求才会被接受,可以增加安全性。
监控模块可以每隔一段时间监控一次ESB模块的状态,若有ESB模块出现故障,则停止向该ESB模块转发请求。监控模块通过七层的http来实现,访问ESB模块的一个特定URL,在ESB模块正常工作时,该URL可返回SUCCESSED,否则返回FAILED。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (8)
1.一种基于SOA架构的总线系统,其特征在于,包括:
代理分发模块,提供多种接入方式,根据预设置的最大连接数接收服务调用方发出的请求或拒绝服务调用方发出的请求,并将接收的请求通过流量控制模块转发至各个ESB模块;
流量控制模块,与代理分发模块连接,为代理分发模块的请求分发令牌,回收已经结束的请求的令牌,将有令牌的请求发送至ESB模块,拦截没有令牌的请求;
ESB模块,ESB模块的数量至少为1个,各个ESB模块分别连接至流量控制模块,ESB模块用于完成服务调用方发出的请求;
监控模块,与流量控制模块和各个ESB模块连接,用于监控各个ESB模块的运行状态;
服务管理模块,与各个ESB模块连接,服务发布方通过服务管理模块发布服务;
所述流量控制模块分发、回收令牌具体为:
对于不同的服务,分别设置每种服务的令牌数;对于代理分发模块的请求,若该请求所对应的服务的令牌数不等于0,则为该请求分发一个令牌,该请求发送至ESB模块,令牌数减1,若该请求所对应的服务的令牌数等于0,则该请求停止发送,直至该请求被分发到一个令牌;若一个请求在ESB模块被完成,则该请求所对应的服务的令牌数加1;
所述ESB模块用于完成服务调用方发出的请求,包括:服务的动态路由、访问控制、报文格式转换、编码转换、超时控制。
2.根据权利要求1所述的一种基于SOA架构的总线系统,其特征在于,所述总线系统还包括平台管理模块,平台管理模块用于管理ESB模块,所述服务管理模块通过平台管理模块与各个ESB模块连接,服务管理模块的数据通过平台管理模块发送至各个ESB模块。
3.根据权利要求1所述的一种基于SOA架构的总线系统,其特征在于,所述预设置的最大连接数包括总线系统的最大连接数和各个ESB模块的最大连接数。
4.根据权利要求1所述的一种基于SOA架构的总线系统,其特征在于,所述代理分发模块将接收的请求通过流量控制模块转发至各个ESB模块具体为:
代理分发模块获取请求的路径和请求头,根据预设置的路由策略,将请求转发至ESB模块。
5.根据权利要求4所述的一种基于SOA架构的总线系统,其特征在于,所述代理分发模块将请求转发至ESB模块之前,还包括:根据预设置的识别策略,判断请求是否对应故障服务,若为是,则将请求转发至预设置的故障服务ESB模块。
6.根据权利要求2所述的一种基于SOA架构的总线系统,其特征在于,所述ESB模块包括消息中间件模块,用于实现各个ESB模块之间、ESB模块与平台管理模块之间的消息异步传输。
7.根据权利要求1所述的一种基于SOA架构的总线系统,其特征在于,所述监控模块根据预设置的监控规则对各个ESB模块的运行状态进行监控,并将监控结构发送至代理分发模块。
8.根据权利要求1所述的一种基于SOA架构的总线系统,其特征在于,所述服务管理模块还用于:服务发布、服务地址修改、服务访问关系管理、服务IP白名单管理、服务下线管理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011633659.2A CN112822080B (zh) | 2020-12-31 | 2020-12-31 | 一种基于soa架构的总线系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011633659.2A CN112822080B (zh) | 2020-12-31 | 2020-12-31 | 一种基于soa架构的总线系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112822080A CN112822080A (zh) | 2021-05-18 |
CN112822080B true CN112822080B (zh) | 2022-09-16 |
Family
ID=75856593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011633659.2A Active CN112822080B (zh) | 2020-12-31 | 2020-12-31 | 一种基于soa架构的总线系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112822080B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114567460B (zh) * | 2022-01-30 | 2024-06-18 | 上海浦东发展银行股份有限公司 | 一种esb端口对接入系统的身份认证方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102724222A (zh) * | 2011-03-29 | 2012-10-10 | 北京东方通科技股份有限公司 | 基于esb的流量控制方法 |
CN105657053A (zh) * | 2016-03-04 | 2016-06-08 | 浪潮软件集团有限公司 | 基于soa架构的数据集成交换平台 |
CN107196866A (zh) * | 2017-06-19 | 2017-09-22 | 阿里巴巴集团控股有限公司 | 一种流量控制方法和装置 |
CN109286573A (zh) * | 2018-08-31 | 2019-01-29 | 重庆富民银行股份有限公司 | 基于分布式令牌桶的削峰系统 |
CN110138677A (zh) * | 2019-05-15 | 2019-08-16 | 极智(上海)企业管理咨询有限公司 | 请求流量控制方法、系统、终端及介质 |
CN110213173A (zh) * | 2019-06-06 | 2019-09-06 | 北京百度网讯科技有限公司 | 流量控制方法及装置、系统、服务器、计算机可读介质 |
CN111107012A (zh) * | 2019-12-27 | 2020-05-05 | 上海浦东发展银行股份有限公司 | 一种多维度集中流量的控制方法及系统 |
CN111163166A (zh) * | 2019-12-30 | 2020-05-15 | 广州银行股份有限公司 | 一种企业服务总线系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2504953A4 (en) * | 2009-11-23 | 2017-07-05 | Telefonaktiebolaget LM Ericsson (publ) | License redistributing method, moderator and license controlling system thereof |
US10171589B2 (en) * | 2015-10-23 | 2019-01-01 | International Business Machines Corporation | Reducing interference from management and support applications to functional applications |
CN108476216B (zh) * | 2016-03-31 | 2021-01-22 | 甲骨文国际公司 | 用于集成事务中间件平台与集中式访问管理器用于在企业级计算环境中的单点登录的系统和方法 |
-
2020
- 2020-12-31 CN CN202011633659.2A patent/CN112822080B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102724222A (zh) * | 2011-03-29 | 2012-10-10 | 北京东方通科技股份有限公司 | 基于esb的流量控制方法 |
CN105657053A (zh) * | 2016-03-04 | 2016-06-08 | 浪潮软件集团有限公司 | 基于soa架构的数据集成交换平台 |
CN107196866A (zh) * | 2017-06-19 | 2017-09-22 | 阿里巴巴集团控股有限公司 | 一种流量控制方法和装置 |
CN109286573A (zh) * | 2018-08-31 | 2019-01-29 | 重庆富民银行股份有限公司 | 基于分布式令牌桶的削峰系统 |
CN110138677A (zh) * | 2019-05-15 | 2019-08-16 | 极智(上海)企业管理咨询有限公司 | 请求流量控制方法、系统、终端及介质 |
CN110213173A (zh) * | 2019-06-06 | 2019-09-06 | 北京百度网讯科技有限公司 | 流量控制方法及装置、系统、服务器、计算机可读介质 |
CN111107012A (zh) * | 2019-12-27 | 2020-05-05 | 上海浦东发展银行股份有限公司 | 一种多维度集中流量的控制方法及系统 |
CN111163166A (zh) * | 2019-12-30 | 2020-05-15 | 广州银行股份有限公司 | 一种企业服务总线系统 |
Non-Patent Citations (2)
Title |
---|
"企业服务总线ESB之流量控制";SmartESB的专栏;《CSDN博客,URL:https://blog.csdn.net/smartesb/article/details/39478981》;20140922;第1页第1-4段 * |
"流量控制系列2-流量控制的基础方法和算法";Littlehui"s Notes;《URL:http://www.lilhui.com/2019/07/29/java/flowcontroller/flowcontroller_2/》;20190729;第1页第1段 * |
Also Published As
Publication number | Publication date |
---|---|
CN112822080A (zh) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102075343B (zh) | 一种实现带外管理的方法、系统和带外管理交换机 | |
CN100446495C (zh) | 一种动态共享连接的方法和系统 | |
US6389129B1 (en) | Interface for interfacing client programs with network devices in a telecommunications network | |
CN111083177B (zh) | 基于协同网关的跨域协同交互方法 | |
CN107426299A (zh) | 实现共享助动车系统服务器tcp长连接和高并发方法 | |
CN112822080B (zh) | 一种基于soa架构的总线系统 | |
CN102170366B (zh) | 与单板进行通信的方法、装置和系统 | |
CN111901308B (zh) | 信息交互方法 | |
CN106970843B (zh) | 远程调用方法和装置 | |
US20030021293A1 (en) | Signaling gateway system and network management method for use in the signaling gateway system | |
KR20010082938A (ko) | 차세대 이동통신 시스템에서 원격 프로세스 호를 이용한운용 보전 방법 | |
CN101997724A (zh) | 一种更新组播转发条目的方法及装置 | |
CN108880966A (zh) | 企业服务总线系统 | |
CN101997860B (zh) | 一种ngn网络架构中通信链路检测管理的方法和装置 | |
CN104539438B (zh) | 一种用于pon系统中实现组播业务分层的系统及方法 | |
EP2075950B1 (en) | Method, system for managing a-interface circuit and mgw | |
WO2006058464A1 (fr) | Systeme en grappes de centre de message court et son procede de commande | |
CN100456685C (zh) | 一种二层组播的实现方法及接入设备 | |
US8046419B2 (en) | Method of processing open asynchronous application service event and open web service gateway implementing the same | |
CN115150406B (zh) | 跨数据中心分布式esb配置管理系统 | |
CN114500646B (zh) | 一种去中心化的esb云平台系统及其服务调用方法 | |
CN111159103B (zh) | 一种企业服务总线系统 | |
KR100362206B1 (ko) | 라우팅 기능 분산 기법을 이용하여 복수망간 연동을지원하는 시스템의 성능을 향상시키는 장치 및 그 방법 | |
CN113746574B (zh) | 一种信息交互方法、系统及设备 | |
CN106899671A (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 |