栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 云计算 > 云平台

SpringCloud+RabbitMQ+Docker+Redis+Elasticsearch Java微服务

云平台 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringCloud+RabbitMQ+Docker+Redis+Elasticsearch Java微服务

看完了黑马程序员的免费课程,感觉受益匪浅,写个笔记,记录一下,持续更新。。。

课程地址:https://www.bilibili.com/video/BV1LQ4y127n4?p=1

1.微服务框架,学习哪些内容
  • 系统整体

  •  学习哪些知识

  •  学习路径

 2.认识微服务
  • 单体架构

单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署。

优点: 架构简单 部署成本低

缺点: 耦合度高

  • 分布式架构 

 分布式架构:根据业务功能对系统做拆分,每个业务功能模块作为独立项目开发,称为一个服务。

优点:降低服务耦合,有利于服务升级和拓展

缺点:服务调用关系错综复杂

  • 分布式架构优点很多,但是并非完美无缺 ,分布式架构的要考虑的问题:

服务拆分粒度如何?

服务集群地址如何维护?

服务之间如何实现远程调用?

服务健康状态如何感知? 

  • 微服务

微服务是一种经过良好架构设计的分布式架构方案,微服务架构特征:

单一职责:微服务拆分粒度更小,每一个服务都对应唯一的业务能力,做到单一职责,避免重复业务开发

面向服务:微服务对外暴露业务接口

自治:团队独立、技术独立、数据独立、部署独立

隔离性强:服务调用做好隔离、容错、降级,避免出现级联问题 

  • 总结

单体架构特点?

简单方便,高度耦合,扩展性差,适合小型项目。例如:学生管理系统

分布式架构特点?

松耦合,扩展性好,但架构复杂,难度大。适合大型互联网项目,例如:京东、淘宝 

微服务:微服务一种良好的分布式架构方案

优点:拆分粒度更小、服务更独立、耦合度更低

缺点:架构非常复杂,运维、监控、部署难度提高 

3.微服务技术对比
  • 微服务结构

微服务这种方案需要技术框架来落地,全球的互联网公司都在积极尝试自己的微服务落地技术。在国内最知名的就是SpringCloud和阿里巴巴的Dubbo。

 

 4.SpringCloud
  • 介绍

SpringCloud是目前国内使用最广泛的微服务框架。

官网地址:https://spring.io/projects/spring-cloud。

SpringCloud集成了各种微服务功能组件,并基于SpringBoot实现了这些组件的自动装配,从而提供了良好的开箱即用体验:

  • SpringBoot与SpringCloud的关系

Spring boot是Spring的一套快速配置脚手架,可以基于spring boot快速开发单个微服务。

Spring Cloud基于Spring Boot,为微服务体系开发中的架构问题,提供了一整套的解决方案——服务注册与发现,服务消费,服务保护与熔断,网关,分布式调用追踪,分布式配置管理等。

SpringCloud与SpringBoot的版本兼容关系如下:

5. 服务拆分
  • 注意事项

单一职责:不同微服务,不要重复开发相同业务

数据独立:不要访问其它微服务的数据库

面向服务:将自己的业务暴露为接口,供其它微服务调用

拆分为

 

  • 总结:

微服务需要根据业务模块拆分,做到单一职责,不要重复开发相同业务

微服务可以将业务暴露为接口,供其它微服务使用

不同微服务都应该有自己独立的数据库 

6.微服务远程调用

。。。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/895607.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号