一个毕业后差一点进大厂的程序员的进阶之路——既为巩固知识,也为增长粉丝

个人微信公众号【一条IT】,每天分享软件,资源,教程,福利。

基于分布式的微服务架构满足哪些维度?

服务注册与发现

服务调用

服务熔断

负载均衡

服务降级

服务消息队列

配置中心管理

服务网关

服务监控

全链路追踪

自动化构建部署

服务定时任务调度操作

什么是springcloud?

官方:

分布式服务架构的一站式解决方案,是多种微服务架构落地技术的集合体,俗称微服务全家桶。

个人理解:

以前的服务器就好像,一个会语数外全能的老师,为学生提供服务,这个老师生病了,那全校停课。现在微服务流行后,学校有了数学教研组,语文教研组,外语教研组,每个教研组有一群老师具体负责某科的教学,缺了谁,学校都照样运转。

而这个变化中,那些改变历史的程序员就是把一个服务器中的众多服务,或好几台服务器中的众多服务,分类出来,解耦合出来,把他们类似的功能交给同一个集群来做,把互相耦合在一起的功能剥离出来,按业务,按功能来把他们作为一个个微服务放在服务器上,而这个服务器就只提供一个服务,或较少的服务。让一个超大的服务逻辑,解耦合为一个个小服务,均匀的分布在各自的服务器中。微服务就微在这。

每个教研组就是一个微服务集群。他们提供同样的服务,而注册中心Eureka就是这个存放这个教研组老师名单的地方,学生们想先访问这个注册中心获取教师名单,然后根据相应的负载方法去访问各自老师。不至于让集群中某一老师累死也不至于让某一老师闲死。

Zuul网关呢,就是学校的门卫,某些学生来学校找谁,它负责指引(路由),并且通过一些非常简单的配置,达到阻拦一些人进入(身份验证),或者控制想学数学的人只能去数学教研组,不能去核能教研组学怎么造原子弹(权限验证)。

Hystrix熔断器呢,可以把它当成学校的志愿者,当一个教研组集体罢课后,学生找不到老师了,这些志愿者及时的告诉来访问的学生,相应的结果,异常信息等,免得大量的学生在学校等待,这些志愿者赶快把这些等待的学生梳理出去,学生一直在学校等待,那其他需要学生的学校,也会等待学生,最后造成大面积的学校瘫痪。这里学生我们看成一个个请求。熔断器就是把某事故的蔓延即使熔断了。

当然这些组件也是微服务需要注册到Eureka注册中心

Spring Cloud 就可以看成是这个学校了。众多上面提到的组件相当于都是这个学校的各职能部门。

springboot和springcloud版本对应选择

spring boot

源码地址:https://github.com/spring-projects/spring-boot/releases/

中文开发文档:https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Release-Notes

官方推荐:使用2.0+版本——Java 8-Java9

spring cloud

中文开发文档:https://www.bookstack.cn/read/spring-cloud-docs/docs-index.md

官方推荐:G版 H版(过早的版本不再维护)

本系列文章使用的各组件版本:

springcloud各功能组件升级那些事

1,Eureka停用,可以使用zk作为服务注册中心

2,服务调用,Ribbon准备停更,代替为LoadBalance

3,Feign改为OpenFeign

4,Hystrix停更,改为resilence4j

或者阿里巴巴的sentienl

5.Zuul改为gateway

6,服务配置Config改为 Nacos

7,服务总线Bus改为Nacos

【springcloud合集】02:微服务架构理论基础相关推荐

  1. PDF分享-SpringCloud+高并发+中间件+微服务架构从零开始学微服务架构

    什么是微服务? 如何快速上手SpringCloud微服务系统架构+常用中间件服务 1.SOA.Webservice.Dubbo.SpringCloud究竟什么是微服务? 2.单体应用向微服务异构平台架 ...

  2. 《黑马头条》SpringBoot+SpringCloud+ Nacos等企业级微服务架构项目

    01环境搭建.SpringCloud微服务(注册发现.服务调用.网关) 1)课程对比 2)项目概述 2.1)能让你收获什么 2.2)项目课程大纲 2.3)项目概述 随着智能手机的普及,人们更加习惯于通 ...

  3. 微服务架构,springcloud核心组件和实战,docker容器

    文章目录 前言 一.微服务开发基础 1.微服务架构开发 1.1单体架构的应用的困境 1.2 微服务架构 1.2.1 理解微服务架构 1.2.1 微服务的优缺点 1.3 微服务架构设计 1.3.1 微服 ...

  4. 《自学SpringCloud微服务架构》之第 1 篇 —— 微服务的自我修养

    序言: 我们先看看2019年中国首富排行榜.嗯,99%的财富掌握在1%的人手里.没错的,这个时代,是富豪们玩转手里的棋子的时代,而我们都是看客.本人已毕业四年,却还是一如既往的做着毕业生都能做的敲代码 ...

  5. 单体应用到微服务架构转型-实践过程总结

    点击上方"猿芯",选择"设为星标" 后台回复"1024",有份惊喜送给面试的你 原文 https://www.toutiao.com/art ...

  6. AI TALK | 云原生时代的微服务架构与关键技术

    随着云原生与微服务技术的逐步发展,业界也逐步构建出一整套比较完整的微服务技术体系. 面向云原生时代,微服务架构是从业人员绕不开的一个话题,腾讯云AI&腾讯优图的内容风控安全审核能力也与微服务技 ...

  7. 实战落地微服务架构商城项目-part01

    文章目录 分布式三高商城系统 一.系统架构演变 1.服务架构的演变 1.1单体架构 1.2集群 1.3垂直化 1.4服务化 1.5微服务化 微服务和SOA的区别 2.微服务架构的需求 2.1RPC框架 ...

  8. SpringCloud Alibaba 微服务架构(十一)- 分布式事务解决方案及理论基础篇

    前言 在传统的单体应用架构中,例如经典的SSM,项目会采用分层架构模式:数据库访问层.业务逻辑层.控制层,从前端到后台所有的代码都是一个或者几个开发者去完成,该架构模式没有对我们业务逻辑代码实现拆分. ...

  9. 细解“微服务”架构体系——SpringCloud Alibaba!

    01 前言 "微服务"一词源于 Martin Fowler的名为 Microservices的,博文,可以在他的官方博客上找到http:/ /martinfowler . com/ ...

最新文章

  1. evaluate函数使用无效_[Python实战]使用栈实现简易计算器
  2. C#获取进程的CPU使用率
  3. java数组实验报告_Java实验一实验报告
  4. 数据中台实战(八):如何打造可以支撑N条产品线的标签平台
  5. 无线覆盖项目地勘——无线地勘记录
  6. element显示true或者false_element-ui轮播的简单实现
  7. 淘宝API开发系列--开篇概述
  8. java 转 utp-8,utf8和不同的utp8有何不同?
  9. WPF自定义开关切换按钮
  10. python源码 高通滤波、低通滤波、带通滤波
  11. vim php 配置文件,spacevimsetting
  12. 苹果Mac系统无法输入密码的解决办法
  13. canal 源码解析(1)-启动篇(3)
  14. GoldWave中文版如何将视频批量转换为音频?
  15. word文档通配符换行_Word指定位置批量插入表格,别人花一天搞不出来,我只用了10秒...
  16. 研究生必须过计算机和英语吗,2020考研:英语一75分,她是怎么做到的_计算机考研科目...
  17. c语言编写闹钟主程序流程图,基于STC15W4K58S4单片机的电子万年历设计源码与报告(数码管显示)...
  18. JavaSE-day01
  19. 域名授权验证系统v1.0.6开源版本网站源码
  20. 使用python程序判断某天是不是每个月的第三周的周六问题

热门文章

  1. python--flask框架基础知识
  2. git如何上传本地代码文件到git仓库【图文详解】
  3. 矢量图形引擎库VectorDraw Developer Framework v7.7011.0.1发布
  4. no suitable driver mysql_java连接mySQL的问题,报错No suitable driver found for jdbc:mysql:
  5. 玩转Ubuntu(配置FTP工具之SFTP Net Drive Free)
  6. 二本学计算机容易考研的大学,考研很容易的“211大学”盘点,二本考生适合报考,机会比较大...
  7. 拼命考上研的普通二本生后来怎么样了?
  8. java之spring中时间戳转换时间方式
  9. matlab滤波器 代码,自适应滤波器设计及Matlab实现附程序代码整理版.doc
  10. 以mes为基础的智能工厂,是什么样的?