上次被问到什么是服务治理平台?谈谈你对服务治理平台的理解?

我觉得谈服务治理,首先要知道什么是微服务?

微服务就是一些协同工作的小而自治的服务,两个特性简单连接,分散管理。

Ø简单连接

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进行服务间通信

•运维成本过高

•分布式系统的复杂性

•异步,消息与并行方式使得系统的开发门槛增加

•分布式系统的复杂性也会让系统的测试变得复杂

基于微服务帮助我们解决的实际问题及架构上的优势,我们选择了微服务架构,那么微服务架构后又会带来什么问题?这些问题该如何解决呢?

微服务不仅仅是带来服务拆分、编排管理、持续集成、部署等一系列问题,微服务内部也会有很多问题,诸如:

针对企业使用微服务架构后带来的一系列,也就有了服务治理平台。

什么服务治理

什么是服务治理平台?相关推荐

  1. 微服务治理平台的RPC方案实现

    文章作者:用友云平台 原文链接:http://blog.51cto.com/14084875/2326311?utm_source=tuicool&utm_medium=referral 复制 ...

  2. 快手服务治理平台KESS的设计理念和实战

    如今快手有80亿条海量短视频,1.5亿的日活,每天仍然有超过1500万条以上的新增短视频.如何根据用户的个性化需要,把海量视频精准的分发给用户,让有户得到独特的体验,这是一个复杂的技术问题.快手的用户 ...

  3. 如何构建一个有效的服务治理平台

    本文我们重点讨论如何构建一个有效的服务治理平台,话不多说,直接切入整体.构建服务治理平台基于"管理","度量","管控"三个层面统筹考虑安排 ...

  4. 立足用户使用场景,BoCloud博云服务治理平台发布增强版

    近期,BoCloud博云服务治理平台BeyondMS基于市场情况反馈,发布了最新的增强版.BeyondMS服务治理平台是博云基于多种微服务架构的服务治理平台,提供经过生产验证的微服务框架+微服务治理的 ...

  5. java什么是服务治理平台_Java | Spring Cloud 是如何实现服务治理的

    Spring Cloud 是如何实现服务治理的 Table of Contents 建议提前阅读 Spring Cloud Commons 之服务治理浅析 Spring 在设计的时候,通常会考虑方便扩 ...

  6. 基于Redis的服务治理平台!

    Consul + Sky = CoSky CoSky 是一个轻量级.低成本的服务注册.服务发现. 配置服务 SDK,通过使用现有基础设施中的 Redis (相信你已经部署了Redis),不用给运维部署 ...

  7. 公共平台服务治理与鉴权

    问题 解决问题 鉴权 注册 管理 总结 聊一聊最近了解的公司服务治理平台,主要是思想,理念,而不是一种技术或框架.整个平台设计,融入了OAUTH2认证,融入了微服务思想,帮助公司各系统在复杂的IT架构 ...

  8. 微服务治理实践:服务查询

    来自:阿里巴巴中间件 本文是<微服务治理实践>系列篇的第二篇文章,为大家介绍如何实现服务查询.该系列文章基于阿里云商业化产品 EDAS 的微服务实践,如果你的团队具备较强的微服务治理能力, ...

  9. 美团分布式服务治理框架OCTO之一:服务治理

    写在前面 之前的文章介绍过美团的中间件leaf-code,今天介绍另一款非常强的中间件系统Octo,其实Octo算不上是中间件系统,应该是一整套分布式服务治理平台,美团的很多中间件能力都是通过Octo ...

最新文章

  1. pandas dataframe 字符映射为数字
  2. 微信的Bug差点让我被老板炒鱿鱼!
  3. IntelliJ IDEA mac快捷键
  4. MySQL数据类型中DECIMAL的作用和用法
  5. git显示服务器所有分支,怎么拉取git服务器上面的分支到本机?
  6. 学习的过程和挖矿其实很像
  7. SPOJ Finding Fractions
  8. Java之泛型T T与T的用法
  9. Python数据库使用-SQLite
  10. paxos 练手 推进中
  11. matlab中circle函数_JavaScript碎片——函数闭包(模拟面向对象)
  12. python open写入_Python IO操作文件读取和写入、open函数的mode参数、buffering,文件缓冲区...
  13. 运输层课后第61题解读
  14. Python Error: “ImportError: No module named six”,用自动安装解决依赖问题
  15. 适用于 Windows 10 的触摸板手势
  16. Ubuntu20.04安装微信的方法
  17. 上半年精选300篇Python文章,推荐你收藏~
  18. Qt 基于http的网络文件下载
  19. 5000词学英语——DAY4
  20. 我的世界win10版与java版_我的世界java版和win10版的区别

热门文章

  1. 接口自动化测试实践指导(下):接口自动化测试断言设置思路
  2. 【冀宝er要逆袭】HDU-4287-Intelligent IME
  3. 利用IEHelper实现简单网址过滤
  4. 数论基础之中国剩余定理(附证明)
  5. 总结笔记:linux以太网连接正常但上不了网
  6. 计算机usb接口更新,教大家电脑USB接口2.0怎么升级成3.0
  7. DataGear 制作支持全国、省、市三级数据钻取效果的地图数据可视化看板
  8. jdk8 forEach循环
  9. 隐喻是什么?我们为什么需要它
  10. java 买票 多线程_java多线程买票问题