什么是服务治理平台?
上次被问到什么是服务治理平台?谈谈你对服务治理平台的理解?
我觉得谈服务治理,首先要知道什么是微服务?
微服务就是一些协同工作的小而自治的服务,两个特性简单连接,分散管理。
Ø简单连接
1、在连接通道方面,微服务很轻,一般采用轻量级的通讯协议(如HTTP)和简单数据格式(如JSON)。
2、无需中心节点提供复杂业务处理,把业务的职责还给服务端,更灵活地响应业务变化。
Ø分散管理
1、分散业务-业务高内聚、低耦合,简化依赖关系
2、分散数据-微服务数据块内部的表紧密相关,块间数据相关性弱。在实施层面,数据逻辑上分离,或者使用独立数据库,物理上隔离。
3、分散物理资源-借助虚拟机和容器技术,非常适合微服务部署,对服务器资源更高效地利用。
我们既然谈微服务,那么先看看什么不属于微服务呢?我们从架构演进说起。从最初的MVC架构到RPC架构,再到SOA架构,最后到了我们的微服务架构。
再谈为什么要微服务?
在传统的应用架构及开发模式下,产生了一些问题,总结如下:
l 系统复杂
l 环境设置复杂
l 不兼容技术无法混合使用
l 多应用间无法有效隔离
l 开发、测试、线上版本管理复杂
l 运维困难
l 无法拆分
l 难以扩容缩容
l 编译时间长
而微服务架构正是在这种环境下应用而生。微服务主要是为了应对复杂度;相对于单一的复杂系统,该架构由多个简单的服务组成,这些服务之间存在复杂的交互,其目标在于确保复杂度能够得到控制。相比基于ESB的SOA架构,微服务架构具有如下优势:
优势 |
劣势 |
|
单体 |
•人所众知:传统工具、应用和脚本都是这种结构 •IDE友好:Eclipse、IntelliJ等开发工具多 •便于共享:单个归档文件包含所有功能,便于共享 •易于测试:单体应用部署后,服务或特性即可展现,没有额外的依赖,测试可以立刻开始 •容易部署:只需将单个归档文件复制到单个目录下 |
•不够灵活:任何细修改需要将整个应用重新构建/部署,这降低了团队的灵活性和功能交付频率 •妨碍持续交付:单体应用比较大时,构建时间比较长,不利于频繁部署,阻碍持续交付。 •受技术栈限制:必须使用同一语言/工具、存储及消息,无法根据具体的场景做出其它选择 •技术债务:“不坏不修(Not broken,don’t fix)”, 系统设计/代码难以修改,偶合性高。 |
SOA |
•服务重用性:通过编排你基本服务以用于不同的场景 •易维护性:单个服务的规模变小,维护相对容易 •高可靠性:使用消息机制及异步机制,提高了可靠性 •高扩展和可用性:分布式系统的特性 •软件质量提升:单个服务的复杂度降低 •平台无关:可以集成不同的系统 •提升效率:服务重用、降低复杂性,提升了开发效率 |
•过分使用ESB:使得系统集成过于复杂 •使用基于SOAP协议的WS:使得通信的额外开销很大 •使用形式化的方式管理:增加了服务管理的复杂度 •需要使用可靠的ESB:初始投资比较高 |
微服务 |
•简单:单个服务简单,只关注于一个业务功能。 •团队独立性:每个微服务可以由不同的团队独立开发。 •松耦合:微服务是松散耦合的。 •平台无关性:微服务可以用不同的语言/工具开发。 •通信协议轻量级:使用REST或者RPC进行服务间通信 |
•运维成本过高 •分布式系统的复杂性 •异步,消息与并行方式使得系统的开发门槛增加 •分布式系统的复杂性也会让系统的测试变得复杂 |
基于微服务帮助我们解决的实际问题及架构上的优势,我们选择了微服务架构,那么微服务架构后又会带来什么问题?这些问题该如何解决呢?
微服务不仅仅是带来服务拆分、编排管理、持续集成、部署等一系列问题,微服务内部也会有很多问题,诸如:
针对企业使用微服务架构后带来的一系列,也就有了服务治理平台。
什么是服务治理?
什么是服务治理平台?相关推荐
- 微服务治理平台的RPC方案实现
文章作者:用友云平台 原文链接:http://blog.51cto.com/14084875/2326311?utm_source=tuicool&utm_medium=referral 复制 ...
- 快手服务治理平台KESS的设计理念和实战
如今快手有80亿条海量短视频,1.5亿的日活,每天仍然有超过1500万条以上的新增短视频.如何根据用户的个性化需要,把海量视频精准的分发给用户,让有户得到独特的体验,这是一个复杂的技术问题.快手的用户 ...
- 如何构建一个有效的服务治理平台
本文我们重点讨论如何构建一个有效的服务治理平台,话不多说,直接切入整体.构建服务治理平台基于"管理","度量","管控"三个层面统筹考虑安排 ...
- 立足用户使用场景,BoCloud博云服务治理平台发布增强版
近期,BoCloud博云服务治理平台BeyondMS基于市场情况反馈,发布了最新的增强版.BeyondMS服务治理平台是博云基于多种微服务架构的服务治理平台,提供经过生产验证的微服务框架+微服务治理的 ...
- java什么是服务治理平台_Java | Spring Cloud 是如何实现服务治理的
Spring Cloud 是如何实现服务治理的 Table of Contents 建议提前阅读 Spring Cloud Commons 之服务治理浅析 Spring 在设计的时候,通常会考虑方便扩 ...
- 基于Redis的服务治理平台!
Consul + Sky = CoSky CoSky 是一个轻量级.低成本的服务注册.服务发现. 配置服务 SDK,通过使用现有基础设施中的 Redis (相信你已经部署了Redis),不用给运维部署 ...
- 公共平台服务治理与鉴权
问题 解决问题 鉴权 注册 管理 总结 聊一聊最近了解的公司服务治理平台,主要是思想,理念,而不是一种技术或框架.整个平台设计,融入了OAUTH2认证,融入了微服务思想,帮助公司各系统在复杂的IT架构 ...
- 微服务治理实践:服务查询
来自:阿里巴巴中间件 本文是<微服务治理实践>系列篇的第二篇文章,为大家介绍如何实现服务查询.该系列文章基于阿里云商业化产品 EDAS 的微服务实践,如果你的团队具备较强的微服务治理能力, ...
- 美团分布式服务治理框架OCTO之一:服务治理
写在前面 之前的文章介绍过美团的中间件leaf-code,今天介绍另一款非常强的中间件系统Octo,其实Octo算不上是中间件系统,应该是一整套分布式服务治理平台,美团的很多中间件能力都是通过Octo ...
最新文章
- pandas dataframe 字符映射为数字
- 微信的Bug差点让我被老板炒鱿鱼!
- IntelliJ IDEA mac快捷键
- MySQL数据类型中DECIMAL的作用和用法
- git显示服务器所有分支,怎么拉取git服务器上面的分支到本机?
- 学习的过程和挖矿其实很像
- SPOJ Finding Fractions
- Java之泛型T T与T的用法
- Python数据库使用-SQLite
- paxos 练手 推进中
- matlab中circle函数_JavaScript碎片——函数闭包(模拟面向对象)
- python open写入_Python IO操作文件读取和写入、open函数的mode参数、buffering,文件缓冲区...
- 运输层课后第61题解读
- Python Error: “ImportError: No module named six”,用自动安装解决依赖问题
- 适用于 Windows 10 的触摸板手势
- Ubuntu20.04安装微信的方法
- 上半年精选300篇Python文章,推荐你收藏~
- Qt 基于http的网络文件下载
- 5000词学英语——DAY4
- 我的世界win10版与java版_我的世界java版和win10版的区别