Martian-cloud 4.0,跟注册中心拜拜了,基于传染机制的分布式组件诞生

小晨Maste 2020-11-11 14:43:16 ⋅ 665 阅读

这次真的要跟注册中心讲拜拜了,微服务不再需要占用一套注册中心集群了,大大节约了运维成本

更新点如下

  1. 丢弃了一开始的【生产者->注册中心->消费者】模型
  2. 采用传染机制,实现服务的发现与治理

什么是传染机制

  • 常规的分布式采用的是【生产者->注册中心->消费者】模型,生产者将接口给注册中心,消费者从注册中心发现其他的服务,实现调用
  • 传染机制就是丢弃注册中心,可以把接口看做病毒,服务看做是人,服务之间只要有直接或者间接的联系,最终都会被染上病毒(接口)

比如我们现在有三个服务


这些服务之间是相互独立的,他们无法发现对方,所以我们需要做一些事

可以将他们连接起来

比如像这个样子【图1】

也可以是这样子【图2】

连接方式随意,只要别让任何服务落单即可

当这些服务连接后,会发生什么

我们用图1来举例

  1. 当A启动时,此时只有一台服务,所以相安无事,完全独立
  2. 当B启动时,由于A连接的是B,所以A,B之间产生了关系,他们的接口会互相传染,此时A中有B的接口,B中有A的接口
  3. 当C启动时,由于B连接的是C,所以B,C之间产生了关系,而B和A又存在关系,所以三台服务器都产生了关系,他们的接口再一次相互传染了,此时A,B,C都有对方的完整接口列表
  4. 如果三台服务中任意一个宕机了,也没关系,因为他们的接口已经传染开了,所有服务都产生了联系,可以跳过一开始的传染途径,直接进行感染
  5. 宕机的这个服务的接口会从其他的服务上自动消失

官方网站

http://mars-framework.com/


全部评论: 0

    我有话说:

    Martian框架发布 3.0.3 版本,Redis分布式

    项目简介 Martian 是一个声明式 API 编程(DAP)框架,可以帮助你快速开发后端服务。 以HttpServer作为 http服务,彻底脱离Tomcat这一类Web容器和Servlet

    深入理解 Spring Cloud 核心组件 底层原理

    主要组件原理有更深入一点理解,特地做一...

    码云推荐:一个优秀分布式spring boot/Spring Cloud API限流框架,特别适合微服务架构

    一个优秀分布式spring boot/Spring Cloud API限流框架,特别适合微服务架构.

    Spring Cloud(Greenwich版)-03-编写高可用Eureka Server(集群)

    前言 上一章Spring Cloud(Greenwich版)-02-服务注册与服务发现-Eureka入门,我们实现将User和Goods微服务都注册Eureka上,那么在生产环境中为了达到高

    Knife4j 2.0.8 发布,轻量级微服务聚合文档中间诞生

    Knife4j前身是swagger-bootstrap-ui,是一个为Swagger接口文档赋能工具 文档:https://xiaoym.gitee.io/knife4j/ 效果(旧版):http

    Node rabbitmq 入门就够

      消息中间件 消息队列中间件(Message Queue Middleware, 简称为 MQ)是指利用高效可靠消息传递机制进行与平台无关数据交流, 并基于数据通信来进行分布式系统

    构建数据集成和实时数据处理流水线工具Spring Cloud Data Flow

    Spring Cloud Data Flow 是基于原生云对 Spring XD 重新设计

    Element 2.14.1 发布,基于 Vue 桌面端组件

    Element 2.14.1 发布。Element 是一套为开发者、设计师和产品经理准备基于 Vue 2.0 桌面端组件库,提供配套设计资源,帮助你网站快速成型。由饿么公司前端团队开源

    Spring Cloud快速搭建开放平台解决方案

    基于Spring Cloud开放平台解决方案 SOP

    Riot 5.3.1 发布,基于组件 UI 库

    Riot 5.3.1 现已发布。Riot 是一个简单而优雅基于组件 UI 库,为所有现代浏览器带来自定义组件,压缩文件大小仅有 6 KB,支持 FireFox、Chrome、Edge

    open-monitor 1.7.0 版本发布,基于 Prometheus 分布式监控平台

    open-monitor是一套基于Prometheus分布式监控平台,适用于wecube,WeCube通过监控插件来对资源以及应用监控及告警。此插件底层引用Prometheus,上层封装

    ElasticJob 3.0.0-beta 发布,丰富报警机制集成

    本周Apache ShardingSphere团队很高兴向大家宣布: ElasticJob-3.0.0-beta 和 ElasticJob UI-3.0.0-beta 新版本正式发布

    Micronaut 2.4.0 发布,基于 JVM 微服务应用框架

    Micronaut 是 Grails 框架作者打造开源项目,也是新一代基于 JVM 全栈微服务框架,用于构建模块化、易于测试微服务应用。有关 Micronaut 特性介绍点此查看。 近日

    MateCloud 3.2.8 版本发布,基于 Spring Cloud Alibaba 微服务平台

    软件简介 MateCloud 是一款基于Spring Cloud Alibaba微服务架构。目前已经整合 Spring Cloud Gateway、Spring Security

    开源分布式配置中心 Apollo 1.8.0 发布

    Apollo(阿波罗)是携程框架部门研发分布式配置中心,能够集中化管理应用不同环境、不同集群配置,配置修改后能够实时推送到应用端,并且具备规范权限、流程治理等特性,适用于微服务配置管理场景

    TimescaleDB 2.0.0 发布,基于 PostgreSQL 时序数据库

    TimescaleDB 2.0.0 现已发布。TimescaleDB 是基于 PostgreSQL 开发一款时序数据库,以插件化形式打包提供。此版本增加分布式超表(多节点

    Spring Cloud Alibaba 发布毕业后首个版本

    方剑,花名洛夜,GitHub ID @fangjian0423,开源爱好者,阿里巴巴高级开发工程师,阿里云产品 EDAS 开发,Spring Cloud Alibaba 开源项目负责人。

    Swagger接口文档工具:Knife4j 2.0.7 发布,细节优化

    Knife4j前身是swagger-bootstrap-ui,是一个为Swagger接口文档赋能工具 文档:https://doc.xiaominfo.com 效果(旧版):http