一、前言

各位同学,又是时隔两个月,由于近期项目紧张,所以一直没有时间来博客上进行技术整理,这次给大家带来的是一个比较流行的技术——微服务,本篇文章只是对什么是微服务以及SpringCloud做一些简介,让同学们有一个初步的了解,在后面的文章中,我会对SpringCloud的整体以及会具体讲解关于SpringCloud中的Eureka、Hystrix、Ribbon、Config、Fegin、Zuul、Bus等技术的作用以及搭建过程,会出一系列关于SpringCloud的实践博客。欢迎各位同学持续关注。

二、前期准备

首先,整个课程系列需要同学们有一定的基础技能,分别是java、springboot、github以及基础的Linux的知识,其中springboot是各位同学一定要掌握的,如果没有springboot基础可以查看我之前的博客对 java 搭建基于springboot的ssm(spring + springmvc + mybatis)的maven项目java 搭建基于springboot的ssh(spring + springmvc + hibernate)的gradle项目(基础篇) 进行学习,关于github以及Linux方面可以在使用到的时候再进行学习以及准备。

三、介绍

3.1 什么是微服务?

简单地说,微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTFul API进行通信协作。被拆分成的每一个小型服务都围绕着系统中的某一项或一些耦合度较高的业务功能进行构建,且每个服务都维护自身的存储、业务并且独立部署,并且这些微服务可以使用不同语言开发。

3.2 SpringCloud介绍

SpringCloud是一个基于SpringBoot实现的微服务架构开发工具,其中我们后期会对如下子项目进行具体的讲解以及搭建
1.Eureka:服务治理组件,包含服务注册中心、服务注册与发现机制实现
2.Hystrix:容错管理组件,实现断路器模式,对服务中中线的故障提供容错能力
3.Ribbon:客户端负载均衡的服务调用组件
4.Feign:基于Hystrix和Ribbon的声明式服务调用组件
5.Spring Cloud Config:配置管理工具,支持使用Git储存配置信息,使项目配置外部化存储;
6.Zuul:提供智能路由和访问过滤等功能
7.Spring Cloud Bus:事件、消息总线,用来传播集群中状态的变化,例如:动态刷新配置。

好了,以上是对SpringCloud开始教学前的一些简单的介绍。并没有涉及到过多的具体知识点,本人会后期持续更新关于一个SpringCloud项目的搭建流程以及各子项目在实际项目中的应用场景。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐