当前位置:网站首页>【系统梳理】当我们在说服务治理的时候,其实我们说的是什么?
【系统梳理】当我们在说服务治理的时候,其实我们说的是什么?
2022-08-11 08:30:00 【hhkun0120】
1、WHAT 什么是服务治理?
首先要明白什么是治理?治理:整治、统治、管理。
服务治理(SOA governance),按照Anne Thomas Manes的定义是:企业为了确保事情顺利完成而实施的过程,包括最佳实践、架构原则、治理规程、规律以及其他决定性的因素。服务治理指的是用来管理SOA的采用和实现的过程。对,我知道,你看这种学术描述的时候跟我一样懵逼。SOA =Service-Oriented Architecture,面向服务的架构。所以通俗意义上说,就是治理面向服务的架构。面向服务的架构有哪些呢,包括两个方面:单体服务架构和微服务架构。单体服务架构,可以理解为JSP+servlet+一个数据库。
单体服务(monolithic)
如果服务属于单体结构,服务治理的挑战更多是当单体架构由于承载的业务庞大,服务内部逻辑变得复杂,扩展性也变差。这时候往往不需要特别的服务治理手段,而是将单体服务拆分为微服务,即完成”微服务化“,将原有单体服务架构向微服务架构演进。
微服务(microservices)
业务服务演进到微服务架构后,服务治理问题是否就此终结?远远没有。在微服务架构下,出现了新的服务问题,从而需要对微服务进行服务治理。那微服务又有哪些问题需要治理?
2、WHY 为什么要进行服务治理?
答案很简单。因为不治理就会出问题。就比如我们国家有56个民族,不治理的话,各个民族语言、文字、货币、风俗习惯、文化等如何交流 ?回归到服务上说,针对每种不同业务的服务越来越多,如何保证各种服务统一有序的成为整个系统的一部分,服务治理迫在眉睫。
3、HOW 怎么治理?
这是服务治理中的重点部分。大型互联网公司有的自研、有的借用开源的、有的借用别家的,现存世上有以下几种服务治理框架:
Dubbo、HSF、JSF、Tars、Motan和RestCloud,问spring cloud是不是一种服务治理框架,如果按照服务治理的各个方面来说,spring 家族是迄今为止最好用且用途最广的服务治理框架。
服务治理包括很多方面,
- 服务的注册和发现
- 软负载均衡与容错
服务监控与统计
服务权限控制、服务的自动注册、客户端的自动发现
服务调用链跟踪
服务降级
服务负载均衡调整
名称 | 所属公司 | 是否开源 | 资料文档 | 备注 |
---|---|---|---|---|
spring cloud | Pivotal | 是 | 多 | 用的多、用的广 |
Dubbo | 阿里巴巴 | 是 | 多 | |
HSF | 阿里巴巴 | 否 | 中 | 目前已作为阿里云产品EDAS其中的套件开放使用 |
Tars | 腾讯 | 是 | 中 | 已作为腾讯云应用框架对外提供使用 |
JSF | 京东 | 否 | 少 | |
Motan | 新浪微博 | 是 | 中 | |
istio | 谷歌、ibm | 是 | 少 | |
Linkerd | CNCF | 是 | 少 |
4、WHEN 何时治理。
服务的整个生命周期中。
参考链接:
到底什么是服务治理 https://www.zhihu.com/question/56125281/answer/1099439237
浅谈服务的治理 https://blog.csdn.net/enweitech/article/details/83269497
边栏推荐
- Interview questions about Android Service
- 租房小程序
- 链式编程注解
- 如何仅更改 QGroupBox 标题的字体?
- Essential C# scripting skills for Unity developers
- 如何通过 IDEA 数据库管理工具连接 TDengine?
- CSDN21天学习挑战赛——封装(06)
- 查询跟踪快递单号物流,智能分析物流中转有延误的单号
- go-grpc TSL authentication solution transport: authentication handshake failed: x509 certificate relies on ... ...
- 抽象类和接口
猜你喜欢
随机推荐
Kotlin算法入门求回文数数算法优化二数字生成规则
基础SQL——DDL
9、Neural Sparse Voxel Fields
For the first time, I suspect that there is a bug in selenium4 because the iframe element is not found?
Kotlin算法入门兔子数量优化及拓展
快速幂,逆元的求解
AcWing 272. 最长公共上升子序列
Linux,Redis中IOException: 远程主机强迫关闭了一个现有的连接。解决方法
麒麟V10系统打包Qt免安装包程序
软件测试常用工具的用途及优缺点比较(详细)
Rust从入门到精通06-函数
小目标检测3_注意力机制_Self-Attention
Mysql JSON对象和JSON数组查询
剑指offer专项突击版第26天
抽象类和接口
Getting Started with Kotlin Algorithms Calculating Prime Numbers and Optimization
shell之sed
Kotlin算法入门求自由落体
链式编程注解
One network cable to transfer files between two computers