需要具备的知识 1 springmvc+mybatis+mysql 2 Consumer消费者(Client)通过REST调用Provider提供者(Server)提供的服务 3 Maven的分包分模块:project下带三个子模块,microservicecloud-api:封装的整体entity/接口/公共配置等,microservicecloud-provider-dept-8001:微服务落地的服务提供者,microservicecloud-consumer-dept-80:微服务调用的…
一.父工程搭建 父工程pom: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.o…
简介 Zuul是Netflix提供的一个开源的API网关服务器,SpringCloud对Zuul进行了整合和增强.服务网关Zuul聚合了所有微服务接口,并统一对外暴露,外部客户端只需与服务网关交互即可.相对于内部服务而言,能够防止其被外部客户端直接访问而暴露服务的敏感信息,起到了保护作用.除此之外,Zuul还可以实现身份认证.数据监控.动态路由等功能. 项目介绍 sc-parent,父模块(请参照SpringCloud学习笔记(1):Eureka注册中心) sc-eureka,注册中心(请参照S…
从技术维度理解: 微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底 地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事, 从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行单独启动 或销毁,拥有自己独立的数据库. 从专业维度理解: 业界大牛马丁.福勒(Martin Fowler) 这样描述微服务: 论文网址: https://martinfowler.com/articles/microservices.html • 微服务 强调的是服务的大小,它…
总体介绍 承接着我们的springmvc+mybatis+mysql初级高级课程,以Dept部门模块做一个微服务通用案例Consumer消费者(Client)通过REST调用Provider提供者(Server)提供的服务    Maven的分包分模块架构   一个Project带着多个Module子模块  MicroServiceCloud父工程(Project)下初次带着3个子模块(Module) microservicecloud-api 封装的整体Entity/接口/公共配置等 micr…
SpringCloud学习笔记:服务支撑组件 服务支撑组件 在微服务的演进过程中,为了最大化利用微服务的优势,保障系统的高可用性,需要通过一些服务支撑组件来协助服务间有效的协作.各个服务支撑组件的原理可以参考我的之前一篇文章:微服务实践:服务治理. Spring Cloud提供的支持 Eureka:各个服务启动时,Eureka Client都会将服务注册到Eureka Server,并且Eureka Client还可以反过来从Eureka Server拉取注册表,从而知道其他服务在哪里. Rib…
简介 Feign是一个声明式的Web Service客户端,它简化了Web服务客户端的编写操作,相对于Ribbon+RestTemplate的方式,开发者只需通过简单的接口和注解来调用HTTP API.它支持Spring MVC注解和JAX-RS注解,还支持可插拔式的编码器和解码器.整合了Eureka,Ribbon和Hystrix,具有可插拔.基于注解.负载均衡.服务熔断等一系列便捷功能. 项目介绍 sc-parent,父模块(请参照SpringCloud学习笔记(1):Eureka注册中心)…
什么是微服务? 看笔记二 微服务之间是如何独立通讯的? 服务与服务间采⽤轻量级的通信机制互相协作(通常是基于HTTP协议的RESTful API) SpringCloud和Dubbo有什么区别? Dubbo是通过rpc远程调用,微服务cloud是通过rest调用. 最大区别: SpringCloud抛弃了Dubbo的RPC通信,采用的是基于HTTP的REST方式. 严格来说,这两种方式各有优劣.虽然从一定程度上来说,后者牺牲了服务调用的性能,但也避免了上面提到的原生RPC带来的问题.而且REST…
目录 前言 正文内容 001_课程说明 002_零基础微服务架构理论入门 微服务优缺点[^1] SpringCloud与微服务的关系 SpringCloud技术栈 003_第二季Boot和Cloud版本选型 SpringBoot 版本选择(升级至2.0及以上) SpringCloud 版本选择 Cloud与Boot的对应的依赖关系 004_Cloud组件停更说明 005_父工程Project空间新建 006_父工程pom文件 007_复习DependencyManagement和Dependen…
一.单体架构的问题 微服务为什么会出现?在学习Springboot的时候知道Springboot极大的简化了我们的开发,我们可以快速的进行业务开发,Springboot单体应用在项目的开发初期能够满足我们需求,这种单体架构优点非常的明显: 容易测试:本地就可以起完整的系统,不需要外部依赖. 容易开发:我们只需引入依赖,选择框架便可快速开发. 易于部署:单体架构部署也较简单,直接打包即可. 易于水平伸缩:这里的收缩时指当我们需要多个服务器时也比较方便 在项目刚开始的时候我们可以快速的开发,一个长寿…