
Spring Cloud微服务架构学习实践
本专栏主要用于介绍如何一步步搭建基于Spring Cloud的微服务架构,每个技术点都是通过实战进行验证的。
-
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:1.0文章目录
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 目录: 1.1版本选择及快速构建 2.1服务注册与发现-Eureka Server 2.2服务提供方及健康检查设置-Eureka Discovery 3.1服务消费者-Ribbon 3.2服务消费者-Feign 4.1服务容错-Hystrix ...2018-06-27 18:16:30 阅读数:1152 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:1.1版本选择及快速构建
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 步骤: 1.微服务技术指南 那么什么是“微服务架构”呢?简单的说,微服务架构就是将一个完整的应用从数据存储开始垂直拆分成多个不同的服务,每个服务都能独立部署、独立维护、独立扩展,服务与服务间通过诸如RESTful API的方式互相调用。 微服务各个模...2018-06-26 14:08:41 阅读数:3618 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:2.1服务注册与发现-Eureka Server
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: 服务注册与发现:即注册中心,微服务往往有多个服务,多个服务之间如何相互发现调用,如何进行负载均衡,如何动态更新服务;故需要注册中心,将各服务在服务中心注册,各服务之间的调用通过注册中心进行发现及调用;常见的插件为Netflix Eureka、...2018-06-26 16:38:54 阅读数:954 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:2.2服务提供方及健康检查设置-Eureka Discovery
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: Eureka instance:一个服务,如:个人中心,会部署多台服务器,而每台服务器上提供的服务就是instance; 负载配置。 Eureka service:指的是服务,提供一种特定功能的服务,如:个人中心,而同一个服务可以提供多个i...2018-07-02 09:35:02 阅读数:779 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:3.1服务消费者-Ribbon
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: 服务消费者:即调用注册中心中的注册服务暴露出的接口;同一服务提供者会启动多个,故服务消费者需要起到负载均衡的作用 Spring Cloud Ribbon:Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户...2018-06-26 17:58:22 阅读数:661 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:3.2服务消费者-Feign
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: Spring Cloud Feign:Spring Cloud Feign是一套基于Netflix Feign实现的声明式服务调用客户端。它使得编写Web服务客户端变得更加简单。通过创建接口并用注解来配置它既可完成对Web服务接口的绑定。它具...2018-06-27 09:55:26 阅读数:827 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:4.1服务容错-Hystrix
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: 服务容错:微服务往往服务众多,各服务之间相互调用,若消费者在调用提供者时出现由网络、提供者服务自身问题等导致接口出现故障或延迟;此时消费者的请求不断增加,务必会出现因等待响应而造成任务积压,线程无法释放,进一步导致服务的瘫痪。微服务架构既然存...2018-06-27 16:04:02 阅读数:692 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:4.2Hystrix监控面板-Hystrix Dashboard
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: Spring Cloud Hystrix Dashboard:收集Hystrix执行过程中的重要指标,整理展示为可视化的数据面板以达到服务监控的作用。 步骤: 1.创建hystrixDashboard(Hystrix Dashboard监...2018-06-27 17:04:15 阅读数:541 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:4.3Hystrix监控数据集群-Turbine
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: Spring Cloud Turbine:当Hystrix消费者多个时需要先将各个消费者的执行信息聚合在一起再展示到展示面板。 步骤: 1.创建turbine(Hystrix监控数据集群)子项目 通过SPRING INITIALIZR工...2018-06-27 18:03:08 阅读数:296 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:5.1服务网关-Zuul
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: 前面几章我们实现了: 服务中心提供服务注册和发现; 实现消费者对提供方的负载均衡调用; 实现服务调用时的熔断机制使服务更加健全及其监控; 但消费者如何给外部调用且对消费者的集群如何做到负载均衡及权限管理? 故抽象出服务网关这个概念:...2018-06-28 16:23:22 阅读数:839 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:6.1全链路追踪-Sleuth
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: 全链路追踪:一个微服务系统,服务之间的调用往往是很复杂的,一个消费者往往需要调用多个服务提供者才能得到结果,即几乎每一个前端请求都会形成一条复杂的分布式服务调用链路,在每条链路中任何一个依赖服务出现延迟过高或错误的时候都有可能引起请求最后的失...2018-07-02 14:08:36 阅读数:542 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:6.2全链路追踪监控-Zipkin
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: Zipkin:Zipkin是一个分布式追踪系统。它有助于收集解决微服务架构中的延迟问题所需的时序数据。它管理这些数据的收集和查找。Zipkin的设计基于 Google Dapper实现。应用程序用于向Zipkin报告时序数据。Zipkin用户...2018-07-02 17:12:28 阅读数:2818 评论数:7 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:6.3全链路追踪监控-Zipkin(mysql数据库)
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: zipkin默认保存的内存里,在微服务架构中肯定是不行的,本篇讲述将链路信息保存到mysql数据库中 步骤: 1.创建zipkinServer4Mysql服务 添加pom.xml依赖 <project xmlns="http:...2018-07-02 18:28:33 阅读数:788 评论数:0 -
原
Spring Cloud(Finchley.RELEASE版本)微服务学习实践:7.1分布式配置中心
环境: jdk1.8;spring boot2.0.3;spring cloud(Finchley.RELEASE版本);Maven3.3 摘要说明: Spring Cloud Config:Spring Cloud Config为分布式系统中的外部化配置提供服务器和客户端支持。通过配置服务器,您可以在所有环境中管理应用程序的外部属性。客户端和服务器映射上的概念与Spring环境和Prope...2018-07-03 18:16:39 阅读数:404 评论数:2