【从零开始学微服务】06.微服务架构的建设思路

2023-11-03 05:59

本文主要是介绍【从零开始学微服务】06.微服务架构的建设思路,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,欢迎来到万猫学社,跟我一起学,你也能成为微服务专家

微服务看起来很美,但其实是需要一个技术体系或平台体系来支撑并且落地的。微服务架构建设分为两种思路:

  • 框架模式
  • 服务网格(Service Mesh)模式

接下来我们对上面的两个思路进行详细的介绍和对比。

框架

框架模式的典型代表是 Spring Cloud,Spring Cloud 是基于 Spring Boot 的一整套微服务开发框架,专注于为典型用例提供良好的开箱即用体验,并提供覆盖其他用例的扩展机制。

框架模式的底层运行平台可以是物理实体机或 PaaS 平台,也可以是 Kuberneters 平台或 Docker 容器。

框架模式的优势

面向应用和开发人员,定制化、协议支持灵活,适合完全自治的服务状态,方便线下调试,对操作系统平台无依赖。

框架模式的不足

对业务是侵入性的,应用需引入额外的框架或SDK包;需要构建微服务基础设施做业务能力支撑。

服务网格(Service Mesh)

Istio 是服务网格(Service Mesh)模式的典型代表。Istio 扩展了 Kubernetes ,使用强大的 Envoy 服务代理建立可编程的、感知应用程序的网络,为复杂的部署带来了标准的、通用的流量管理、遥测和安全性。

虽然在Istio的官方文档上写着可以同时支持 Kubernetes 和传统工作负载,但实际上 Istio 更适合在 Kubernetes 上运行,在物理实体机或 PaaS 平台上有一些局限性。

ServiceMesh 模式的优势和不足与 SDK 模式正好相反。

服务网格的优势

不需要额外引入框架或 SDK 包,对应用无侵入,且对 Kubernetes 天然友好支持;对流量的管控有着非常大的优势。

服务网格的不足

部署比较复杂,对底层系统有一定的依赖;通讯协议类型支持受限,对 Mesh 平台的依赖度高;对于分布式场景下的复杂度问题没有很好的解决手段。

总结

基于框架模式的微服务建设方案已经非常成熟,国内最知名的就是 Spring Cloud 、 Spring Cloud Alibaba 、 Dubbo等等,而基于服务网格(Service Mesh)的建设方案目前各个大厂也都有尝试和落地,但是要求也更高。

最后,感谢你这么帅,还给我点赞


《从零开始学微服务》总目录

  • 【从零开始学微服务】01.微服务的过去与现在
  • 【从零开始学微服务】02.初识微服务
  • 【从零开始学微服务】03.软件架构的演化过程
  • 【从零开始学微服务】04.微服务架构的特点
  • 【从零开始学微服务】05.微服务的优势和不足
  • 【从零开始学微服务】06.微服务架构的建设思路
  • 【从零开始学微服务】07.微服务常用的开发框架
  • 【从零开始学微服务】08.引入微服务架构的时机
  • 【从零开始学微服务】09.为什么需要服务注册发现?

这篇关于【从零开始学微服务】06.微服务架构的建设思路的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/336088

相关文章

springboot的调度服务与异步服务使用详解

《springboot的调度服务与异步服务使用详解》本文主要介绍了Java的ScheduledExecutorService接口和SpringBoot中如何使用调度线程池,包括核心参数、创建方式、自定... 目录1.调度服务1.1.JDK之ScheduledExecutorService1.2.spring

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

TP-Link PDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务

《TP-LinkPDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务》近期,路由器制造巨头普联(TP-Link)在用户群体中引发了一系列重要变动,上个月,公司发出了一则通知,明确要求所... 路由器厂商普联(TP-Link)上个月发布公告要求所有用户必须完成实名认证后才能继续使用普联提供的 D

linux进程D状态的解决思路分享

《linux进程D状态的解决思路分享》在Linux系统中,进程在内核模式下等待I/O完成时会进入不间断睡眠状态(D状态),这种状态下,进程无法通过普通方式被杀死,本文通过实验模拟了这种状态,并分析了如... 目录1. 问题描述2. 问题分析3. 实验模拟3.1 使用losetup创建一个卷作为pv的磁盘3.

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

微服务架构之使用RabbitMQ进行异步处理方式

《微服务架构之使用RabbitMQ进行异步处理方式》本文介绍了RabbitMQ的基本概念、异步调用处理逻辑、RabbitMQ的基本使用方法以及在SpringBoot项目中使用RabbitMQ解决高并发... 目录一.什么是RabbitMQ?二.异步调用处理逻辑:三.RabbitMQ的基本使用1.安装2.架构

Java中使用Java Mail实现邮件服务功能示例

《Java中使用JavaMail实现邮件服务功能示例》:本文主要介绍Java中使用JavaMail实现邮件服务功能的相关资料,文章还提供了一个发送邮件的示例代码,包括创建参数类、邮件类和执行结... 目录前言一、历史背景二编程、pom依赖三、API说明(一)Session (会话)(二)Message编程客

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

JAVA利用顺序表实现“杨辉三角”的思路及代码示例

《JAVA利用顺序表实现“杨辉三角”的思路及代码示例》杨辉三角形是中国古代数学的杰出研究成果之一,是我国北宋数学家贾宪于1050年首先发现并使用的,:本文主要介绍JAVA利用顺序表实现杨辉三角的思... 目录一:“杨辉三角”题目链接二:题解代码:三:题解思路:总结一:“杨辉三角”题目链接题目链接:点击这里