随笔分类 -  springcloud

摘要:在前面的博文中,我们介绍了Zuul在Web以及微服务集群中的应用,在本文中,我们将介绍Zuul的相关配置。 1.路由配置 1.1 简单路由 Spring Cloud在Zuul的routing阶段实现了几个过滤器,这些过滤器决定如何进行路由的工作。其中,最基本的就是SimpleHostRoutingF 阅读全文
posted @ 2018-09-04 20:34 TriHeart 阅读(381) 评论(0) 推荐(0)
摘要:在上一篇博文中,Zuul将请求转发给了一个Web项目进行处理,如果处理的请求不是一个Web项目,而是整个微服务集群,那么Zuul将成为整个集群的网关。在加入Zuul前,Spring Cloud集群的结构如下图所示 为微服务集群加入Zuul的网关后,结构如下图所示 接下来我们就来实现在Spring C 阅读全文
posted @ 2018-09-03 22:13 TriHeart 阅读(212) 评论(0) 推荐(0)
摘要:在实际环境中,我们的应用程序会有多个服务调用者,如何将其组织起来统一对外提供服务呢?我们可以使用Netflix的Zuul框架构建微服务集群网关来解决这个问题。 1. Zuul框架介绍 1.1 关于Zuul Spring Cloud提供了多个组件用于集群内部的通信,例如服务管理组件Eureka,负载均 阅读全文
posted @ 2018-09-02 15:30 TriHeart 阅读(904) 评论(0) 推荐(0)
摘要:Hystrix主要用于保护调用服务的一方,如果被调用的服务发生故障,符合一定条件,就会开启断路器对调用的程序进行隔离。 1.准备测试程序 在进行Spring Cloud整合Hystrix之前,我们先准备好测试程序。测试程序所用的项目如下: > hystrix-server:该项目作为Eureka服务 阅读全文
posted @ 2018-09-02 13:08 TriHeart 阅读(266) 评论(0) 推荐(0)
摘要:1.概述 在很多系统架构中都需要考虑横向扩展、单点故障等问题,对于一个庞大的应用集群,部分服务或机器出现问题不可避免。在出现问题时,如何减少故障的影响、保障集群的高可用,成为一个重要的课题。在微服务集群中,不管是服务器,还是客户端,都支持集群部署,本节将介绍Spring Cloud中所用的集群保护框 阅读全文
posted @ 2018-08-29 22:17 TriHeart 阅读(315) 评论(0) 推荐(0)
摘要:Spring Cloud对Feign进行了封装,本例将演示如何在Spring Cloud中使用Feign。 1.准备SpringCloud的测试项目 测试项目主要有三个, a.spring-feign-server: Eureka的服务器项目,端口为8761; b.spring-feign-prov 阅读全文
posted @ 2018-08-29 10:45 TriHeart 阅读(231) 评论(0) 推荐(0)
摘要:在Spring Cloud集群中,各个角色的通信基于REST服务,因此在调用服务时,就不可避免地需要使用REST服务器请求的客户端。我们知道Spring可以用自带的RestTemplate使用HttpClient发送请求,此处将介绍另一个REST客户端:Feign。Feign框架已经被集成到Spri 阅读全文
posted @ 2018-08-28 21:03 TriHeart 阅读(726) 评论(0) 推荐(0)
摘要:本例将模仿拦截器机制,实现一个简单的ReatTemplate,以便更清楚地展示@LoadBalanced以及RestTemplate的原理。 1.@LoadBalanced注解概述 RestTemplate本是spring-web项目中的一个REST客户端,它遵循REST的设计原则,提供简单的API 阅读全文
posted @ 2018-08-27 22:49 TriHeart 阅读(524) 评论(0) 推荐(1)
摘要:本例将以一个简单的HelloWorld程序来展示Ribbon API的使用,本例的结构图如下 1.编写服务 为了能查看负载均衡的效果,我们先编写一个简单的REST服务,通过指定不同的端口,让服务启动多个实例。新建一个名为first-ribbon-server的maven项目,项目的目录结构如下 此处 阅读全文
posted @ 2018-08-27 10:41 TriHeart 阅读(280) 评论(0) 推荐(0)
摘要:负载均衡是分布式框架的重点,负载均衡机制决定着整个服务器集群的性能和稳定。我们知道,Eureka的服务实例可以进行集群集群部署,每个实例都均衡处理服务请求,那么这些请求是如何被分摊到各个服务实例中的呢?Netflix的负载均衡项目Ribbon帮我们解决了这个问题。 1.Ribbon简介 Ribbon 阅读全文
posted @ 2018-08-25 19:38 TriHeart 阅读(314) 评论(0) 推荐(0)
摘要:本例将会运行两个服务器,两个服务提供者实例和一个服务调用者实例,通过服务调用者请求服务,实现集群部署并通过HttpClient的REST客户端访问服务调用者发布的服务看到负载均衡的效果。 1.本例集群结构图 由于本例的开发环境只有一台电脑,操作系统为Windows,如果要构建集群,需要修改hosts 阅读全文
posted @ 2018-08-24 21:07 TriHeart 阅读(1250) 评论(0) 推荐(0)
摘要:Spring Cloud 集成了Netflix OSS的多个项目,形成了spring-cloud-netflix项目。该项目包含了多个子模块,这些子模块对集成的Netflix旗下的的框架进行了封装,本文将讲述其中一个重要的服务管理框架:Eureka。 1.关于Eureka Eureka是基于REST 阅读全文
posted @ 2018-08-23 21:04 TriHeart 阅读(253) 评论(0) 推荐(0)
摘要:本例将会编写一个Hello world 小程序来演示Eureka的作用,程序中将会包含服务器、服务提供者以及服务的调用者 1. 构建服务器 先创建一个名称为first-ek-server的maven项目作为服务器,项目的目录结构如下 在pom.xml文件中添加Spring Cloud的依赖 pom. 阅读全文
posted @ 2018-08-23 20:17 TriHeart 阅读(477) 评论(0) 推荐(0)