
spring-cloud
文章平均质量分 89
CD826Dong
Talk is cheap, show me the code.
展开
-
Spring Cloud入门教程(番外篇一):RestTemplate使用指南
RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。 1. 使用GET1.1 获取JSON字符串我们可以使用getForEntity()方法:RestTemplate restTemplate = new RestTemplate(); String fooResourceUrl =原创 2017-08-03 22:46:07 · 3896 阅读 · 0 评论 -
Spring Cloud入门教程(二):客户端负载均衡(Ribbon)
上一篇:《Spring Cloud入门教程(一):服务治理(Eureka)》对于大型应用系统负载均衡(LB:Load Balancing)是首要被解决一个问题。在微服务之前LB方案主要是集中式负载均衡方案,在服务消费者和服务提供者之间又一个独立的LB,LB通常是专门的硬件,如F5,或者是基于软件的,如VS、HAproxy等。LB上有所有服务的地址映射表,当服务消费者调用某个目标服务时,它先向LB发起原创 2017-08-03 22:45:27 · 1503 阅读 · 0 评论 -
Spring Cloud 入门教程(一):服务治理(Eureka)
Spring Cloud是一系列框架的集合,其基于Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,构建了服务治理(发现注册)、配置中心、消息总线、负载均衡、断路器、数据监控、分布式会话和集群状态管理等功能,为我们提供一整套企业级分布式云应用的完美解决方案。Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不同开源产品),比如:Spring Cloud Con原创 2017-07-31 20:48:18 · 1963 阅读 · 1 评论 -
Spring Cloud入门教程(四):微服务容错保护(Hystrix)
上一篇:《Spring Cloud入门教程(三):声明式服务调用(Feign)》我们在实践微服务架构时,通常会将业务拆分成一个个微服务,微服务之间通过网络进行通信,进行互相调用,造成了微服务之间存在依赖关系。我们知道由于网络原因或者自身的原因,服务并不能保证服务的100%可用,如果单个服务出现问题,调用这个服务就会出现网络延迟甚至调用失败,而调用失败又会造成用户刷新页面并再次尝试调用,再加上其它服务原创 2017-08-14 19:02:12 · 730 阅读 · 0 评论 -
Spring Cloud入门教程(三):声明式服务调用(Feign)
上一篇:《Spring Cloud入门教程(二):客户端负载均衡(Ribbon)》在上一篇中可以发现当我们通过RestTemplate调用其它服务的API时,所需要的参数须在请求的URL中进行拼接,如果参数少的话或许我们还可以忍受,一旦有多个参数的话,这时拼接请求字符串就会效率低下,并且显得好傻。那么有没有更好的解决方案呢?答案是确定的有,Netflix已经为我们提供了一个框架:Feign。Feig原创 2017-08-07 19:43:27 · 1642 阅读 · 0 评论 -
Spring Cloud入门教程(五):API服务网关(Zuul) 上
上一篇:《Spring Cloud入门教程(四):微服务容错保护(Hystrix)》微服务场景下,每一个微服务对外暴露了一组细粒度的服务。客户端的请求可能会涉及到一串的服务调用,如果将这些微服务都暴露给客户端,那么客户端需要多次请求不同的微服务才能完成一次业务处理,增加客户端的代码复杂度。另外,对于微服务我们可能还需要服务调用进行统一的认证和校验等等。微服务架构虽然可以将我们的开发单元拆分的更细,降原创 2017-08-22 19:15:24 · 716 阅读 · 0 评论 -
Spring Cloud入门教程(六):API服务网关(Zuul) 下
上一篇:《Spring Cloud入门教程(五):API服务网关(Zuul) 上》Zuul给我们的第一印象通常是这样:它包含了对请求的路由和过滤两个功能,其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础。过滤器功能则负责对请求的处理过程进行干预,是实现请求校验、服务聚合等功能的基础。然而实际上,路由功能在真正运行时,它的路由映射和请求转发都是由几个不同的过滤器完成的。原创 2017-09-04 18:26:09 · 462 阅读 · 0 评论 -
Spring Cloud入门教程(七):分布式链路跟踪(Sleuth)
当我们进行微服务架构开发时,通常会根据业务来划分微服务,各业务之间通过REST进行调用。一个用户操作,可能需要很多微服务的协同才能完成,如果在业务调用链路上任何一个微服务出现问题或者网络超时,都会导致功能失败。随着业务越来越多,对于微服务之间的调用链的分析会越来越复杂。Spring Cloud Sleuth为服务之间调用提供链路追踪。通过Sleuth可以很清楚的了解到一个服务请求经过了哪些服务,每个原创 2017-09-11 19:10:25 · 844 阅读 · 0 评论