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

news2024/11/25 20:20:44

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

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

  • 框架模式
  • 服务网格(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)的建设方案目前各个大厂也都有尝试和落地,但是要求也更高。

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


《从零开始学微服务》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/50547.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

N皇后问题详解

文章目录一、题目描述二、题目解析(1)思考一(集合回溯)(2)思考二(数组深度递归)(3)思考三(位运算)一、题目描述 N 皇后问题是指在 n * n 的棋盘上要摆 n 个皇后, 要求:任何两个皇后…

Metabase学习教程:仪表盘-8

仪表板中的Markdown很有趣 如何在仪表板中使用Markdown以获得乐趣和有益。 开发有效仪表板通常包括为人们提供上下文,让他们了解计算是如何存在或为什么存在的。虽然精确的标题、描述和带标签的轴可以在很大程度上澄清可视化,但Metabase还允许您向仪表…

2022最新1w字MySQL索引面试题(附md文档)

小熊学Java个人网站:https://javaxiaobear.gitee.io/,每周持续更新干货,建议收藏! 1、Mysql如何实现的索引机制? MySQL中索引分三类:B树索引、Hash索引、全文索引 2、InnoDB索引与MyISAM索引实现的区别是什…

【附源码】计算机毕业设计JAVA重工教师职称管理系统

【附源码】计算机毕业设计JAVA重工教师职称管理系统 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: JAVA…

window像mac一样使用快捷键(AutoHotkey + SharpKeys)

自己有win和mac两台笔记本, 每天都需要在两台电脑切换进行开发, 快捷键的差异就让人很难受(个人喜好mac快捷键, 常用的几个快捷键分布比较合理), 所以网上找来了解决方案供大家参考 我想作为一名 Mac User, 使用 Win 首先感到不适应的应该是快捷键的差异&#xff0c…

[附源码]Python计算机毕业设计Django的项目管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

[附源码]计算机毕业设计springboot停车场管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【吴恩达机器学习笔记】八、应用机器学习的建议

✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📣专栏定位:为学习吴恩达机器学习视频的同学提供的随堂笔记。 📚专栏简介:在这个专栏,我将整理吴恩达机器学习视频的所有内容的笔记&…

小袁博客重构V2.0版本重新发布(增加实时聊天/定时发布/权限管理/微信登录等功能)

有话说 第一代V1.0版本的博客项目,结构比较乱 ,各种注入和各种校验,层次不分明 重构之后,分了七大模块 注册中心模块后台模块前台模块第三方服务模块实体类模块工具模块系统模块 降低了模块间的耦合度,结合Valid注…

RabbitMQ初步到精通-第十一章-RabbitMQ之常见问题汇总

目录 RabbitMQ之常见问题汇总 1.rabbitmq丢消息场景 1.1 消息未持久化丢失 1.2 消费时消息丢失 1.3 如何阻止消息丢失 2. mq消费消息是pull 还是 push 2.1 pull形式消费 2.2 push形式消费 3. mq重复消费场景 3.1 生产端重复情况 3.2 消费端重复 3.3 如何防止 4.pre…

行业新趋势!利尔达OpenCPU方案助力水表厂商破局

在“十四五”规划数字化转型的大背景下,水务行业的不断发展对智能水表的需求呈爆发式增长,NB-IOT智能水表凭借其低功耗、低成本、安全、便捷、智能的特点较好解决了传统抄表的痛点,迅速成为行业市场的主角。 但过去两年里,“缺芯…

Rust机器学习之Plotters

Rust机器学习之Plotters 本文将带领大家学习Plotters的基础用法。重点学习Plotters的图表元素和常用图表的使用。 本文是“Rust替代Python进行机器学习”系列文章的第四篇,其他教程请参考下面表格目录: Python库Rust替代方案教程numpyndarrayRust机器…

关于账本数据库:你想知道的这里都有

💕前言:十二月份出个openGuass集合专栏,带领大家浅浅的认识一下国产数据库吧💕 1. 什么是账本数据库 区块链大家想必都耳熟能详,比特币、以太坊甚至狗狗币等代币,作为区块链的代名词,不仅牵动着…

《歌在飞》在抖音播放7.7亿,歌者苏勒亚其其格用公益让爱心传递

随着短视频的流行,抖音平台也被大家所熟知,很多好听的音乐作品,都是通过抖音平台传唱开来。 曾经有一首《歌在飞》的音乐作品,在抖音平台传唱度很广,截止目前已经有7.7亿的播放量。据悉,《歌在飞》这首歌曲…

基于QPSK的载波同步和定时同步性能仿真,包括Costas环的gardner环

目录 1.算法描述 2.matlab算法仿真效果 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 载波同步是相干解调的基础,不管对于模拟通信还是数字通信来说,只要是相干解调,接收端都必须提供同频同相的载波。当然,若采用基带传输&#…

hadoop 3.x大数据集群搭建系列7-安装Hudi

文章目录编译环境准备一. 下载并解压hudi二. maven的下载和配置2.1 maven的下载和解压2.2 添加环境变量到/etc/profile中2.3 修改为阿里镜像三. 编译hudi3.1 修改pom文件3.2 修改源码兼容hadoop33.3 手动安装Kafka依赖3.4 解决spark模块依赖冲突3.4.1 修改hudi-spark-bundle的p…

pytest + yaml 框架 - 3.全局仅登录一次,在用例中自动在请求头部添加Authentication token认证

前言 我们在使用自动化测试框架的时候,经常会遇到一个需求,希望在全局用例中,仅登录一次,后续所有的用例自动带上请求头部token 或者cookies。 环境准备 Python 3.8版本 Pytest 7.2.0 最新版 pip 安装插件 pip install pytes…

[附源码]Python计算机毕业设计Django的实验填报管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,我…

OSSID: Online Self-Supervised Instance Detection by (And For) Pose Estimation

许多机器人操作算法都需要 实时目标姿态估计。然而,最先进的目标姿态估计方法是针对一组特定的对象进行训练的;因此,这些方法需要 重新训练 以估计每个新对象的姿势。本文提出了 OSSID 框架,利用 慢速零样本 姿态估计器 来 自监督…

OpenGL 图像色调

目录 一.OpenGL 图像色调 1.IOS Object-C 版本1.Windows OpenGL ES 版本2.Windows OpenGL 版本 二.OpenGL 图像色调 GLSL Shader三.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录…