CN107612713A - 一种治理后端服务的方法 - Google Patents

一种治理后端服务的方法 Download PDF

Info

Publication number
CN107612713A
CN107612713A CN201710717067.0A CN201710717067A CN107612713A CN 107612713 A CN107612713 A CN 107612713A CN 201710717067 A CN201710717067 A CN 201710717067A CN 107612713 A CN107612713 A CN 107612713A
Authority
CN
China
Prior art keywords
service
client
interface
center
information
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
CN201710717067.0A
Other languages
English (en)
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.)
Tongcheng Network Technology Co Ltd
Original Assignee
Tongcheng Network 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 Tongcheng Network Technology Co Ltd filed Critical Tongcheng Network Technology Co Ltd
Priority to CN201710717067.0A priority Critical patent/CN107612713A/zh
Publication of CN107612713A publication Critical patent/CN107612713A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种治理后端服务的方法,包括如下步骤:服务治理系统配置项目信息,并发送至服务注册中心;服务注册中心根据项目信息分别向客户端和服务端下发对应服项目的路由配置信息;客户端和服务端根据服务从服务注册中心拉取对应的服务配置列表信息,并根据下发的路由配置信息调用相应的服务接口,查询对应的服务地址,完成服务调用。通过服务注册中心实现服务集中化处理和监控,对外提供统一的服务接口,使所有的服务请求统一通过服务中心下发的请求地址与后端节点的服务提供方进行交互,并且支持各类客户端访问,方便了业务的复用和整合,提升了分布式架构的灵活性,提高了服务的利用率。

Description

一种治理后端服务的方法
技术领域
本发明属于通信技术领域,具体涉及一种治理后端服务的方法。
背景技术
分布式系统架构简单的说是运行在多个处理器上的软件构架设计。架构是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。
分布式系统是建立在网络之上的软件系统。具有高度的内聚性和透明性。内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统。
据申请人了解,现有的后端服务在分布式架构下没有实现集中化管理,对外没有统一的入口,服务只能面向单一的客户端。
发明内容
鉴于上述现有技术存在的缺陷,本发明的目的就是提出一种治理后端服务的方法,通过服务中心下发的请求地址,与后台节点的服务端进行交互,提升了分布式架构的灵活性。
本发明的目的,将通过以下技术方案得以实现:一种治理后端服务的方法,包括如下步骤:
服务治理系统配置项目信息,并发送至服务注册中心;
服务注册中心根据项目信息分别向客户端和服务端下发对应服项目的路由配置信息;
客户端和服务端根据服务从服务注册中心拉取对应的服务配置列表信息,并根据下发的路由配置信息调用相应的服务接口,查询对应的服务地址,完成服务调用。
优选地,服务地址包括接口标识、实际服务名和实际服务地址,服务地址通过接口标识标记,实际服务名和实际服务地址通过服务注册中心配置后下发的路由信息到客户端,客户端通过接口标识调用相应的服务接口。
更优选地,服务接口为弱类型服务接口。
优选地,服务治理系统通过Http请求头中Version字段确定服务接口的版本号,服务端根据版本号对报文做相应的格式解析和安全验证,对服务结果进行相应的格式打包和安全加签。
优选地,客户端从服务注册中心拉取对应的服务配置信息,调用时会检测指定服务是否在服务列表中,若存在,则执行服务,则若不存在,则无权限访问,首次服务请求后,客户端无需再主动从服务注册中心抓取对应的服务配置列表信息。
优选地,服务治理系统内配置服务降级策略,注册中心实时下发配置数据给指定客户端,客户端接收后,对想要服务执行熔断、快速失败回退。
优选地,服务端启动服务的方法为:
根据从服务注册中心拉取的服务配置信息;
根据服务注册中心下发的服务配置信息初始化过滤器的配置;
根据服务请求的接口把相应的接口加入到路由表中,注册路由配置。
优选地,服务注册中心内设有序列化器,用于解析请求报文。
优选地,服务端根据下发的路由配置信息,从路由表的缓存中查找请求对应的业务方法,若有,则调用相应的业务处理方法处理请求数据,若无,则直接调用该业务方法处理请求数据,记录处理结果并将返回的结果在配置到过滤器中。
优选地,服务治理系统还包括监控中心,监控中心包括客户端监控、服务端监控和告警,
客户端监控,客户端将调用接口的种类、次数和耗时数据异步发送至监控中心,每隔1分钟聚合一次;
服务端监控,服务端将每个服务被客户端调用的次数、耗时数据异步发送至监控中心,每隔1分钟聚合一次;
告警;当数据出现异常时将告警信息通讯传输至用户。
本发明的突出效果为:通过服务注册中心实现服务集中化处理和监控,对外提供统一的服务接口,使所有的服务请求统一通过服务中心下发的请求地址与后台节点的服务提供方进行交互,并且支持各类客户端访问,方便了业务的复用和整合,提升了分布式架构的灵活性,提高了服务的利用率。
具体实施方式
本发明提供的一种治理后端服务的方法,包括如下步骤:
服务治理系统配置项目信息,并发送至服务注册中心;
服务注册中心根据项目信息分别向客户端和服务端下发对应服项目的路由配置信息;
客户端和服务端根据服务从服务注册中心拉取对应的服务配置列表信息,并根据下发的路由配置信息调用相应的服务接口,查询对应的服务地址,完成服务调用。
以下对本方法各步骤的运行过程及硬件设备作详细说明。
1.服务治理系统,主要负责服务注册、订阅。包括服务契约、服务地址、版本控制、注册订阅、服务测试等功能。根据服务契约、服务地址、服务配置等信息,通过服务注册中心下发到客户端和服务端。
1.1、服务契约
采用弱类型服务接口,服务的消费者在治理中心申请完相关服务后,服务注册中心会自动下发数据到对应客户端,客户端传入服务接口名称和RequestJson完成调用,返回的Response Json数据经反序列化后使用。
弱类接口可以使服务契约的变更无需每次都到服务治理系统中生成客户端,能快速适应服务的变更,而无需担心服务的提供者更新契约后,没有在治理中心同步,导致的客户端版本滞后的问题。
1.2、服务地址
服务地址包括接口标识、实际服务名和实际服务地址。服务地址通过唯一的接口标识标记,实际的服务名和实际服务地址通过服务注册中心配置后下发的服务路由数据至客户端。客户端通过服务唯一标识调用相应的服务接口,并发送请求,获取返回结果。
1.3、版本控制
服务接口版本通过Http请求头中的Version字段来确定,根据取出的字段值判断对应的版本号。由服务端组件,根据版本号对报文做相应的格式解析和安全验证,对服务结果进行相应的格式打包和安全加签。
1.4、注册订阅
服务注册中心,根据配置的项目信息,分别对客户端和服务端下发对应项目的路由配置信息,安全版本,黑名单,设备版本信息、Filter过滤器等配置内容。
客户端组件,根据客户端项目标识,获取订阅的配置信息。
服务端组件,根据服务端项目标识,获取订阅的配置信息。
1.5、服务测试
服务治理系统提供客户端到服务端的调用测试功能。选择客户端项目,服务接口标识,请求JSON内容,点击测试。即可返回服务接口名,完整的服务请求报文,请求的返回结果信息。方便快速测试配置是否正确,各涉及到的各节点是否正常。
2.服务注册中心,负责服务路由数据的下发、服务降级。用于接收服务治理系统的发送来的配置数据,下发配置信息到各对应的客户端组件和服务端组件中。
3.客户端,包括服务调用、服务路由,服务降级、权限控制。
3.1服务调用
客户端只能调用在服务治理系统中审批通过的服务,不是所有的中间层服务都是可以调用的。
客户端在启动时,会从注册中心中拉取对应的服务配置列表数据,调用时会检测指定服务是否在服务列表中,如果不存在,则无权限访问。
客户端每次请求服务时,不再需要主动从注册中心拉取对应的服务配置列表信息。
3.2、服务路由
客户端不能直接依赖服务端,因为当服务端调整部署服务器时,所有的客户端将不可用。
客户端应依赖服务注册中心,由服务注册中心下发服务路由信息,如果服务的地址需要变更,只要在治理系统中,调整该服务对应的地址即可,对客户端调用是透明的。
H5站点启动后,服务注册中心会下发服务路由信息到对应客户端,客户端根据调用的服务接口,查询对应的服务地址,完成服务调用。
服务寻址路径:客户端->接口->服务->地址。
3.3、服务降级
为了防止以下三种情况,需要做服务降级:
1)H5站点遭受攻击
当H5站点遭受黑客攻击,需要对该站点的所有服务调用进行熔断,快速回退失败。
2)服务宕机
服务注册中心会与客户端、中间层服务保持长连接,当某个中间层服务宕机了,服务注册中心会实时感知到,并通知对熔断回退。
运维人员可通应客户端,执行服务降级。
3)优先级策略
当中间层服务面临高负载,此时要对核心服务执行服务降级,例如,优先处理来自App的请求,对H5站点的请求过服务治理系统配置服务降级策略,注册中心会实时下发配置数据给指定客户端,客户端接收到后,对相应服务执行熔断、快速失败回退。
3.4、权限控制
封装Http交互通信,构建报文头、报文体,生成安全签名,托管客户端和服务端的通信过程。
请求发送,根据服务路由信息,针对要请求的服务接口版本,构建相应的服务请求数据包,并连接服务端,发送构造好的内容。
结果处理,等待服务端处理结果的返回,并进行格式验证,如果出错,则进行错误处理,未出错返回结果数据组调用用户。
4.服务端,包括中间层服务、安全验证、服务降级、服务处理、服务结果返回。
4.1、服务启动
首先根据从服务注册中心拉取的服务配置信息。
注册系统使用的序列化器,如Json序列化器、ProtoBuf序列化器,供后续解析请求报文时使用。
初始化Filter过滤器,根据注册中心下发的配置信息,初始化过滤器的配置,如针对所有服务接口,禁用、启用相应的过滤器;针对某个服务接口,禁用、启用相应的过滤器。
注册路由配置,根据请求的接口,把相应的接口及实例加入到路由表中,再次请求时,将从路由表中获取数据。
4.2、请求处理
首先根据请求的版本,组装上下文。然后根据注册中心下发的Filter过滤器配置,调用RequestFilter部分,执行安全验证、服务降级、数据格式化等操作。
4.3、业务执行
根据路由配置信息,从路由表的缓存中查找请求对应的业务方法,找到后直接调用相应的业务处理方法处理请求数据,记录处理结果并进入下一步。如果从路由表中没有找到对应的业务方法,则直接调用业务方法处理请求数据,记录处理结果并进入下一步。
4.4、结果处理
对业务方法返回的结果根据注册中心下发的Filter过滤器配置执行ResponseFilter过滤器。
4.5、服务返回
根据请求报文版本,调用指定的构造器,构造符合特定要求的结果数据,并返回给客户端。
4.6、后处理模块
根据服务注册中心下发的Filter过滤器配置执行FinalFilter模块,执行记录日志,趋势统计等行为。
5、监控中心,负责服务异常的监控及告警。
客户端监控:客户端把调用了哪些接口,调用接口的次数、耗时等数据异步发送给监控中心,每隔1分钟聚合一次。客户端的接口耗时包涵了客户端到服务端的网络消耗、服务处理时间。
服务端监控:服务端把每个服务被客户端的调用次数、耗时异步发送给监控中心,也是每隔1分钟聚合一次。
告警:支持多种数据告告警。如流量阀值预警,间隔五分钟获取前五分钟的数据,与前(上周+上上周同期数据)/2,判断流量是否突然上升或者下降。根据告警规则,把告警信息通过微信、短信、电话等方式通知各项目的告警信息接收人。
本方法通过服务注册中心实现服务集中化处理和监控,对外提供统一的服务接口,使所有的服务请求统一通过服务中心下发的请求地址与后台节点的服务提供方进行交互,并且支持各类客户端的访问,方便了业务的复用和整合,提升了分布式架构的灵活性,提高了服务的利用率。
除上述实施例外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。

Claims (10)

1.一种治理后端服务的方法,其特征在于,包括如下步骤:
服务治理系统配置项目信息,并发送至服务注册中心;
服务注册中心根据项目信息分别向客户端和服务端下发对应服项目的路由配置信息;
客户端和服务端根据服务从服务注册中心拉取对应的服务配置列表信息,并根据下发的路由配置信息调用相应的服务接口,查询对应的服务地址,完成服务调用。
2.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述服务地址包括接口标识、实际服务名和实际服务地址,所述服务地址通过所述接口标识标记,所述实际服务名和所述实际服务地址通过所述服务注册中心配置后下发的路由信息到所述客户端,所述客户端通过所述接口标识调用相应的服务接口。
3.根据权利要求1或2所述的一种治理后端服务的方法,其特征在于,所述服务接口为弱类型服务接口。
4.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述服务治理系统通过Http请求头中Version字段确定服务接口的版本号,所述服务端根据版本号对报文做相应的格式解析和安全验证,对服务结果进行相应的格式打包和安全加签。
5.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述客户端从服务注册中心拉取对应的服务配置信息,调用时会检测指定服务是否在服务列表中,若存在,则执行服务,则若不存在,则无权限访问,首次服务请求后,客户端无需再主动从所述服务注册中心抓取对应的服务配置列表信息。
6.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述服务治理系统配置服务降级策略,所述注册中心实时下发配置数据给指定客户端,客户端接收后,对想要服务执行熔断、快速失败回退。
7.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述服务端启动服务的方法为:
根据从服务注册中心拉取的服务配置信息;
根据服务注册中心下发的服务配置信息初始化过滤器的配置;
根据服务请求的接口把相应的接口加入到路由表中,注册路由配置。
8.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述服务注册中心内设有序列化器,用于解析请求报文。
9.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述服务端根据下发的路由配置信息,从路由表的缓存中查找请求对应的业务方法,若有,则调用相应的业务处理方法处理请求数据,若无,则直接调用该业务方法处理请求数据,记录处理结果并将返回的结果在配置到过滤器中。
10.根据权利要求1所述的一种治理后端服务的方法,其特征在于,所述服务治理系统还包括监控中心,所述监控中心包括客户端监控、服务端监控和告警,
所述客户端监控,客户端将调用接口的种类、次数和耗时数据异步发送至监控中心,每隔1分钟聚合一次;
所述服务端监控,服务端将每个服务被客户端调用的次数、耗时数据异步发送至监控中心,每隔1分钟聚合一次;
所述告警;当数据出现异常时将告警信息通讯传输至用户。
CN201710717067.0A 2017-08-21 2017-08-21 一种治理后端服务的方法 Pending CN107612713A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710717067.0A CN107612713A (zh) 2017-08-21 2017-08-21 一种治理后端服务的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710717067.0A CN107612713A (zh) 2017-08-21 2017-08-21 一种治理后端服务的方法

Publications (1)

Publication Number Publication Date
CN107612713A true CN107612713A (zh) 2018-01-19

Family

ID=61064652

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710717067.0A Pending CN107612713A (zh) 2017-08-21 2017-08-21 一种治理后端服务的方法

Country Status (1)

Country Link
CN (1) CN107612713A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108337311A (zh) * 2018-02-05 2018-07-27 广州中元软件有限公司 一种面向服务的应用程序集中调配的方法和系统
CN108540574A (zh) * 2018-04-27 2018-09-14 宁波银行股份有限公司 一种多类型数据对接系统及方法
CN109597854A (zh) * 2018-10-31 2019-04-09 深圳壹账通智能科技有限公司 一种服务请求的路由方法、装置、计算机设备及计算机存储介质
CN110381163A (zh) * 2019-07-30 2019-10-25 普信恒业科技发展(北京)有限公司 网关节点转发服务请求的方法及网关节点
CN111711569A (zh) * 2020-06-16 2020-09-25 普元信息技术股份有限公司 企业分布式应用中实现请求动态路由的系统及其方法
CN111813568A (zh) * 2020-05-25 2020-10-23 北京皮尔布莱尼软件有限公司 一种服务管理系统和方法
CN112114857A (zh) * 2020-09-15 2020-12-22 四川长虹智能制造技术有限公司 一种前端服务治理方法、前端服务器和网站服务器
CN113114639A (zh) * 2021-03-29 2021-07-13 北京达佳互联信息技术有限公司 配置服务注册中心的方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101969399A (zh) * 2010-09-30 2011-02-09 北京神州泰岳软件股份有限公司 客户端调用服务的路由方法及系统
US20150066882A1 (en) * 2013-09-05 2015-03-05 International Business Machines Corporation Policy driven auto-transitioning framework for governed objects in service registries
US20150249701A1 (en) * 2014-02-28 2015-09-03 Wal-Mart Stores, Inc. Service governance for distributed systems
CN105450757A (zh) * 2015-12-02 2016-03-30 联动优势电子商务有限公司 一种服务管理方法及系统
CN105681463A (zh) * 2016-03-14 2016-06-15 浪潮软件股份有限公司 一种分布式服务框架以及分布式服务调用系统
CN106131213A (zh) * 2016-08-17 2016-11-16 深圳市金证科技股份有限公司 一种服务管理方法和系统
CN106506509A (zh) * 2016-11-15 2017-03-15 深圳市彬讯科技有限公司 可进行服务治理与语言调用的轻量级rpc框架实现方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101969399A (zh) * 2010-09-30 2011-02-09 北京神州泰岳软件股份有限公司 客户端调用服务的路由方法及系统
US20150066882A1 (en) * 2013-09-05 2015-03-05 International Business Machines Corporation Policy driven auto-transitioning framework for governed objects in service registries
US20150249701A1 (en) * 2014-02-28 2015-09-03 Wal-Mart Stores, Inc. Service governance for distributed systems
CN105450757A (zh) * 2015-12-02 2016-03-30 联动优势电子商务有限公司 一种服务管理方法及系统
CN105681463A (zh) * 2016-03-14 2016-06-15 浪潮软件股份有限公司 一种分布式服务框架以及分布式服务调用系统
CN106131213A (zh) * 2016-08-17 2016-11-16 深圳市金证科技股份有限公司 一种服务管理方法和系统
CN106506509A (zh) * 2016-11-15 2017-03-15 深圳市彬讯科技有限公司 可进行服务治理与语言调用的轻量级rpc框架实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张羽: ""一种分布式服务治理框架的设计与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108337311A (zh) * 2018-02-05 2018-07-27 广州中元软件有限公司 一种面向服务的应用程序集中调配的方法和系统
CN108540574A (zh) * 2018-04-27 2018-09-14 宁波银行股份有限公司 一种多类型数据对接系统及方法
CN109597854A (zh) * 2018-10-31 2019-04-09 深圳壹账通智能科技有限公司 一种服务请求的路由方法、装置、计算机设备及计算机存储介质
CN110381163A (zh) * 2019-07-30 2019-10-25 普信恒业科技发展(北京)有限公司 网关节点转发服务请求的方法及网关节点
CN111813568A (zh) * 2020-05-25 2020-10-23 北京皮尔布莱尼软件有限公司 一种服务管理系统和方法
CN111813568B (zh) * 2020-05-25 2024-05-31 北京皮尔布莱尼软件有限公司 一种服务管理系统和方法
CN111711569A (zh) * 2020-06-16 2020-09-25 普元信息技术股份有限公司 企业分布式应用中实现请求动态路由的系统及其方法
CN112114857A (zh) * 2020-09-15 2020-12-22 四川长虹智能制造技术有限公司 一种前端服务治理方法、前端服务器和网站服务器
CN113114639A (zh) * 2021-03-29 2021-07-13 北京达佳互联信息技术有限公司 配置服务注册中心的方法、装置、电子设备及存储介质
CN113114639B (zh) * 2021-03-29 2023-01-20 北京达佳互联信息技术有限公司 配置服务注册中心的方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN107612713A (zh) 一种治理后端服务的方法
CN106375384B (zh) 一种虚拟网络环境中镜像网络流量的管理系统和控制方法
US8239509B2 (en) Systems and methods for management of virtual appliances in cloud-based network
US8019835B2 (en) Automated provisioning of computing networks using a network database data model
CN111861140B (zh) 一种业务处理方法、装置、存储介质和电子装置
US6760762B2 (en) Intelligent network providing network access services (INP-NAS)
CN106888106A (zh) 智能电网中的it资产大规模侦测系统
US20110296000A1 (en) Systems and methods for exporting usage history data as input to a management platform of a target cloud-based network
CN109862051A (zh) 一种微服务架构下多租户的实现方法及系统
US20020156874A1 (en) Automated provisioning of computing networks according to customer accounts using a network database data model
US20020029268A1 (en) Intelligent network providing network access services (INP-NAS)
CN109343829A (zh) 一种java语言分布式微服务治理框架
CN112511218B (zh) 一种基于微服务的卫星地面站监控系统
CN105051698A (zh) 用于基础设施即服务云中故障管理的方法和布置
EP2863582B1 (en) Scheduling a device batch reconfiguration event in a network
EP3413511B1 (en) Vnfm determining method and network function virtualization orchestrator
US9854466B2 (en) Method and apparatus for managing monitoring task
CN108616429A (zh) 一种推送服务的重连方法及设备
CN110138753A (zh) 分布式消息服务系统、方法、设备及计算机可读存储介质
CN106254338A (zh) 报文检测方法以及装置
CN107844339A (zh) 任务调度方法及插件和服务器
CN103731289A (zh) 一种网络服务器自动扩展的方法
US10750356B2 (en) Configuration management method, apparatus, and system for terminal in internet of things
CN110198246B (zh) 一种流量监控的方法及系统
EP3382943B1 (en) Method and system for managing a service provider infrastructure

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

Application publication date: 20180119

RJ01 Rejection of invention patent application after publication