【微服务】国内微服务生态标准-SpringCloud Alibaba

现在已经是21世纪的二十年代,在未来的很长时间,以互联网、IOT物联网为代表的分布式应用必将越来越多,大量的软件企业对掌握微服务与高可用、高性能、高并发的架构人才也必定趋之若鹜。我们可以看看现阶段针对软件架构师的招聘需求和薪资:


出来工作谈钱并不庸俗,我们学习的本身就是为了未来能有更好的发展、更可观的收入。如何让自己能越来越值钱?如何让自己持续值钱?才是我们要追求的目标。

1、那我们为什么要学习微服务架构呢?

架构圈有句名言“任何脱离场景的架构设计都是耍流氓”。在分布式架构演进的几十年中,已经出现了几十种架构模式,但任何的架构演进,都是为了解决上一代架构遗留的各种问题。如解决数据一致性、分布式事务、高可用等问题。微服务架构也如此,随着互联网、物联网架构的广泛应用,高并发的应用程序在数量与体量上都在以指数级提高,那么传统的单体应用、SOA等架构已经不满足新环境对应用性能与可靠性要求。

比如早期的应用系统开发,有使用基于ESB(企业服务总线)的SOA架构推进应用开发。ESB作为分布式架构的核心枢纽解决了异构系统间消息传递的问题。但是随着业务体量的不断提升很快就让ESB不堪重负。再加上ESB本身就属于重量级解决方案,扩展与维护都要依托第三方厂商进行。这也让架构的升级改造变得愈发艰难。

但微服务架构就真的可以一举解决所有问题吗?他就没有什么缺陷吗?其实在学习微服务前,我们也会遇到很多困惑,比如:

  • 微服务拆分粒度如何界定?
  • 数据一致性如何保障?
  • 各链路如何跟踪?如何实施服务监控?

好在经过技术的不断迭代,其中的大部分问题已经有了成熟的答案。

2、为什么是SpringCloud Alibaba?

大家可能会有疑问,在微服务架构技术上,springcloud官方生态已经很完善了,为什么还要去了解SpringCloud Alibaba呢?

其实微服务表面上看起来是将整体应用打散为小服务,再通过网络通信进行数据联通,最终将处理结果展示给用户这种很简单的处理,实际上处理起来确很复杂。比如使用微服务架构后,我们需要考虑数据一致性问题、网络通信故障、限流与熔断机制、调用链路跟踪、集群监控、甚至用户登录和权限管理(SSO)都是全新的挑战。如果这些问题全部都要软件公司自己解决那显然是行不通的。好在各个环节的厂商比较给力,以SpringCloud为基础的微服务技术生态日渐成熟,前面这些列出来的大部分问题都得到了有效的解决。

SpringCloud架构体系

但是好景不长,在这几年以Netfilix Eureka为代表的SpringCloud核心中间件纷纷停止更新,再加上许多组件设计老旧,在性能上已无法满足互联网大厂的要求,国内市场急需一套符合中国特色的微服务架构解决方案。

SpringCloud Alibaba就是在这种背景下诞生的,SpringCloud Alibaba是国产的微服务开发一站式解决方案,与原有的SpringCloud兼容的同时对微服务生态进行拓展,通过添加少量的配置注解,便可实现更符合国情的微服务架构。


相比SpringCloud官方标准,SpringCloud Alibaba提供了更完整的功能、更好用的API,同时在中文的加持下让复杂的微服务架构变得不再高不可攀,目前SpringCloud Alibaba已经是事实上的国内微服务标准。这也是我们为什么了解SpringCloud Alibaba的主要原因。

3、学习思路

微服务架构本质上也是一种架构的实现方案,它在原有基础上对分布式架构作出进一步拓展与标准化。本专栏我们也计划从以下几个方面进行介绍:

  • 微服务架构设计:什么是微服务?微服务架构设计时一些常见问题。

  • Nacos服务治理:Nacos注册中心是整个微服务架构的核心,内容包括Nacos的安装、使用与集群搭建过程、Nacos服务发现的底层原理。

  • 微服务通信:在SpringCloud Alibaba中支持RPC与RESTful两种方案,对应的产品为Dubbo与OpenFeign。

  • 系统保护:Sentinel是SpringCloud Alibaba提供的服务保护中间件,利用Sentinel可以有效预防分布式架构的系统性崩溃。

  • 其他特性:了解SpringCloud Alibaba提供的众多特性。比如:配置中心、链路跟踪、性能监控、分布式事务、消息队列等。

通过以上内容的了解,相信大家一定能对SpringCloud Alibaba有个全面的认识,同时可以将部分内容融合到实际的工作和项目中。

更多内容欢迎关注公众号:服务端技术精选

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【元宵佳节】砖一祝您节日快乐!

元宵节的由来 相传,汉文帝(前179-前157年)为庆祝周勃于正月十五勘平诸吕之乱,每逢此夜,必出言游玩,与民同乐,在古代,夜同宵,正月又称元月,汉文帝就将正月十五定为元宵节&#xff0c…

算法打卡day1|数组篇|Leetcode 704.二分查找、27.移除元素

数组理论基础 数组是存放在连续内存空间上的相同类型数据的集合,可以方便的通过下标索引的方式获取到下标下对应的数据。 1.数组下标都是从0开始的。 2.数组内存空间的地址是连续的。 正是因为数组的在内存空间的地址是连续的,所以我们在删除或者增添…

LiveQing视频点播流媒体RTMP推流服务功能-支持配置开启 HTTPS 服务什么时候需要开启HTTPS服务

LiveQing视频点播流媒体RTMP推流服务功能支持配置开启 HTTPS 服务什么时候需要开启HTTPS服务 1、配置开启HTTPS1.1、准备https证书1.1.1、选择Nginx类型证书下载 1.2、配置 开启 HTTPS1.2.1 web页面配置1.2.2 配置文件配置 2、验证HTTPS服务3、为什么要开启HTTPS3.1、安全性要求…

免费的数据恢复软件哪个好?这10个数据恢复软件可以试试

遇到电脑、硬盘或U盘等设备中数据丢失,不用着急,数据恢复软件来帮你。 在遇到数据丢失的问题时,很多朋友都会很着急也不知道该怎么办。作为数据恢复小白,我们可以选择使用数据恢复软件进行扫描恢复。现在市面上的数据恢复软件很多…

AI技术那些事儿:揭开潜伏在你生活中的高科技小能手

你有没有发现,现在的生活里有些“看不见”的聪明家伙,它们时时刻刻在帮咱们忙活呢?从早上用语音命令打开窗帘、播报新闻,到晚上喊一声关灯睡觉,这些都离不开人工智能(简称AI)的助攻。今天咱就掰…

C++笔记:二叉搜索树(Binary Search Tree)

文章目录 二叉搜索树的概念二叉搜索树操作1. 框架搭建2. 遍历3. 查找迭代实现递归实现 4. 插入迭代实现递归实现 5. 删除迭代实现递归实现 6. 析构与销毁7. 拷贝构造与赋值重载 二叉搜索树的应用二叉搜索树的性能分析二叉搜索树模拟实现源码 二叉搜索树的概念 二叉搜索树又称二…

泛微e-office系统敏感信息泄露漏洞

声明 本文仅用于技术交流,请勿用于非法用途 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任 1、系统简介 泛微e-office系统是标准、易用、快速部署上线的专业协同OA软…

gitlab升级

查看当前版本 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION12.9.3-ee 备份数据 gitlab-rake gitlab:backup:create备份默认位置在 /var/opt/gitlab/backups/ 备份配置数据(git配置目录) tar -zcvf gitlab12.9.3-ee.tar.gz /etc/gitlab备…

01VScode开发stm32环境搭建

title: VScode开发stm32环境搭建 tags: STM32vscode 1.准备工作 1.下载并安装VSCODE 在百度上搜索vscode记住一定要是官方的 不然你自己就是在给自己下毒2345全来了 打红圈一定要有不然就是在垃圾网站上下的 VSCode下载链接 选一个适合你的      安装正常流程走就行不再…

达尔克仪器设备邀您观摩2024生物发酵产品与技术装备展

参展企业介绍 达尔克本着“诚信、求精、协作、创新”的企业精神,以专业的技术、优良的品质和完善的服务,与广大客户共创辉煌未来。 我们的产品——包括水质分析、压力、温度、流量、物位等工业在线过程控制仪表、其他类型传感器以及自动化控制方案——全…

docker运行onlyoffice,并配置https访问【参考仅用】

官方说明: Installing ONLYOFFICE Docs for Docker on a local server - ONLYOFFICEhttps://helpcenter.onlyoffice.com/installation/docs-developer-install-docker.aspx 一、容器端口、目录卷映射 sudo docker run --name容器名称 --restartalways -i -t -d -p…

论文阅读——SimpleClick

SimpleClick: Interactive Image Segmentation with Simple Vision Transformers 模型直接在VIT上增加交互是分割 用VIT MAE方法训练的预训练权重 用交互式分割方法微调,微调流程: 1、在当前分割自动模拟点击,没有人为提供的点击 受到RITM启发…

python[6]

类和对象 面向对象编程–说白就是让对象干活 创建类:class 类名: 创建类对象 对象名 类名() 构造方法 1、构造方法的名称是__init__ 2、构造方法的作用? 构建类对象的时候会自动运行 构建类对象的传参会传递给构造…

【算法与数据结构】链表、哈希表、栈和队列、二叉树(笔记二)

文章目录 四、链表理论五、哈希表理论五、栈和队列理论5.1 单调栈 六、二叉树理论6.1 树的定义6.2 二叉树的存储方式6.3 二叉树的遍历方式6.4 高度和深度 最近博主学习了算法与数据结构的一些视频,在这个文章做一些笔记和心得,本篇文章就写了一些基础算法…

普中51单片机学习(红外通信)

红外通信 红外线系统的组成 外线遥控器已被广泛使用在各种类型的家电产品上,它的出现给使用电器提供了很多的便利。红外线系统一般由红外发射装置和红外接收设备两大部分组成。红外发射装置又可由键盘电路、红外编码芯片、电源和红外发射电路组成。红外接收设备可由…

C++的stack容器->基本概念、常见接口

#include<iostream> using namespace std; #include <stack> //栈stack容器常用接口 void test01() { //创建栈容器 栈容器必须符合先进后出 stack<int> s; //向栈中添加元素&#xff0c;叫做 压栈 入栈 s.push(10); s.push(20); s…

Windows+Yolo3-darknet训练自己数据集并测试

WindowsYolo3-darknet训练自己的数据集并测试 一、首要条件 Windows 7下配置好VS2015OPENCV3.4.2YOLO3CUDA10.0CUDNN7.5生成darknet.exe。具体配置可参考我的博客&#xff1a;https://blog.csdn.net/wszswllnzn_/article/details/100760477 二.制作数据集 1、方法1 使用软件la…

flutter插件开发基础教程

前言 虽然现在已经有很多插件了&#xff0c;但是有时候还是需要自己开发一个插件。因此打算学习一下如何开发一个插件。这里只考虑安卓&#xff0c;安卓使用kotlin&#xff0c;kotlin不会也没事&#xff0c;我也不会。 参考项目&#xff1a;https://github.com/TBoyLi/flutte…

nrm 镜像源管理工具

1、什么是nrm nrm(npm registry manager )是npm的镜像源管理工具。它可以快速在让你在本地源之间切换。 2、安装 npm install -g nrm 3、查看本地源&#xff08;nrm ls&#xff09; 4、切换 &#xff08;nrm use ***&#xff09; 5 、测试速度&#xff08;nrm test ***&…

spring注解驱动系列--Bean生命周期一

一、Bean生命周期 bean创建--- BeanPostProcessor.postProcessorsBeforeInitialization---初始化----BeanPostProcessor.postProcessAfterInitialization ----销毁的过程 二、管理Bean生命周期 在Bean的生命周期中&#xff0c;我们可以认为的进行干预Bean的创建到销毁的过程&…