SPRINGCLOUD讲义
王瑞
2019-12-1
[公司名称]
[]
目录
1 请求与服务的模拟 (3)
1.1 微服务 (3)
1.2 示例 (3)
1.2.1 数据库 (4)
1.2.2 Products服务 (5)
1.2.3 数据库访问与JPA (8)
1.2.4 服务层接口与实现 (10)
1.2.5 控制器 (12)
1.2.6 测试添加商品/查询商品 (13)
1.2.7 Order服务 (17)springcloud和springboot
2 注册中心与Eureka (21)
2.1 注册中心 (21)
2.2 Eureka (22)
2.2.1 设置Eureka服务 (23)
2.3 向注册中心注册服务 (25)
2.3.1 配置Eureka Client (25)
2.3.2 从注册中心获取注册的服务 (27)
3 Eureka Server的高可用 (30)
3.1 设置多个注册中心 (30)
3.1.1 注册中心1 (30)
3.1.2 注册中心2 (31)
3.2 向多个注册中心注册服务 (34)
3.3 消费者可以从多个服务中心获取数据 (34)
3.3.1 测试 (35)
4 负载均衡与Ribbon (36)
5 熔断机制与断路器 (42)
5.1 Hystrix (43)
5.1.1 隔离 (44)
5.1.2 降级 (44)
5.2 Hystrix使用 (44)
5.2.1 熔断并降级 (47)
1请求与服务的模拟
1.1微服务
简单来说,微服务就是将一个单体项目中的各个功能部分,分解成一个个的独立的项目。各部分之间通过提供各自的服务来实现项目的整体交互。
SpringBoot为微服务提供了一个基本的基础框架。本章节以SpringBoot为基础,实现一个服务的交互。为后面详细的介绍SpringCloud提供实例基础。
1.2示例
本示例中有两个服务,其中Order服务是为最终用户服务的,Order服务要用到Products服务。在系统的内部在Order与Products之间就形成了Products为服务的提供者,而Order是服务的消费者。
示例技术实现:
⚫数据库采用MariaDB(一个MySQL兼容数据库)
⚫Products服务使用JPA访问MariaDB数据库。接受RESTFul请求样式。返回JSON数据。
⚫Order服务,使用Spring提供的RestTemplate(一个基于http请求,并能处理返回结果的框架)访问Products服务。
1.2.1 数据库
数据库名:
products 。
用户名:products 、密码:products 。