关闭
当前搜索:

zuul灰度发布功能实现

灰度发布、蓝绿发布、金丝雀发布各是什么意思,可以看这篇http://www.appadhoc.com/blog/product-release-strategy/。基于eureka、ribbon实现灰度发布,是这一篇要讲的知识。我们要发布版本了,在不确定正确性的情况下,我们选择先部分节点升级,然后让一些特定的流量进入到这些新节点,完成测试后再全量发布。我们知道,在eureka中注册各个服务后,如果...
阅读(387) 评论(0)

SpringCloud Feign重试详解

摘要: 今天在生产环境发生了数据库进程卡死的现象,除了sql因为全量更新,没加索引的原因,最主要还是我们的接口的服务器端接口出现问题了。忽视了更新接口的幂等性,以及调用方feign client的重试,导致接口重复执行。万幸的是数据已经修复,花了几个小时跟踪feign和ribbon的源码,把其原理彻底搞明白了。      feign是netflix提供的服务间基于http的rpc调用框架,在spr...
阅读(147) 评论(0)

SpringCloud重试机制配置

SpringCloud重试retry是一个很赞的功能,能够有效的处理单点故障的问题。主要功能是当请求一个服务的某个实例时,譬如你的User服务启动了2个,它们都在eureka里注册了,那么正常情况下当请求User服务时,ribbon默认会轮询这两个实例。此时如果其中一个实例故障了,发生了宕机或者超时等,如果没有配置启用重试retry策略,那么调用方就会得到错误信息或者超时无响应或者是熔断返回的信息...
阅读(204) 评论(0)

zookeeper docker集群配置

本篇讲一下zookeeper在docker中集群搭建方式。先来看看zookeeper的单个Docker配置吧。共包含两个文件,一个Dockerfile,一个sh脚本Dockerfile如下:FROM openjdk:8-jre-alpine # Install required packages RUN apk add --no-cache \ bash \ su-exec E...
阅读(161) 评论(0)

eureka配置账号密码才能访问

如果配置好了eureka server,默认情况下我们就直接直接访问到eureka的界面了。如果不想让所有人都能访问到eureka的界面,可以加上权限认证,输入账号密码才能访问。方式如下:在eureka的server端配置,pom.xml里加上 org.springframework.boot spring-boot-starter-security 然后在yml里加上...
阅读(603) 评论(0)

Zuul超时问题,微服务响应超时,zuul进行熔断

是这样的,今天碰到了微服务响应超时问题,而且超时时间特别短,2秒就超时,zuul就走熔断了。 我采用zuul作为网关,根据不同的访问路径进行微服务的路由,譬如有个服务是user,我访问user服务的某个接口时,该接口执行时间很慢,2秒多,然后还没执行完,zuul就执行熔断了,进入了我配好的ZuulFallbackProvider里。所以来研究一下zuul的超时处理。 前提,zuul和微服务都已经...
阅读(1910) 评论(7)

微服务中网关(API Gateway)的技术选型

用 Spring Cloud 微服务实战中,大家都知道用 Zuul 作为智能网关。API 网关(API Gateway)主要负责服务请求路由、组合及协议转换。下面是大家的总结:一、最佳回答网关的技术选型SpringCloud-Zuul :社区活跃,基于 SrpingCloud 完整生态, 是构建微服务体系前置网关服务的最佳选型.Kong : 基于OpenResty的 API 网关服务和网关服务管理...
阅读(991) 评论(0)

zuul报错java.net.UnknownHostException: 4d59d509898a: Name or service not known

是这样的,eureka、zuul和普通的微服务在本地是OK的,部署到docker后,通过zuul访问某个微服务就报错了。用的是serviceId的方式,在eureka界面也能看到各个微服务都是在线的,没有问题,但就是通过zuul的路由访问时会报错。com.netflix.zuul.exception.ZuulException: Forwarding error2017/11/24 下午9:49:...
阅读(978) 评论(2)

eureka客户端源码解析

原文:https://blog.tookbra.com/2017/08/25/Spring-Cloud-Eureka-Client-Source/源码目录结构. ├── pom.xml └── src ├── main │ ├── java │ │ └── org │ │ └── springframework │ │ ...
阅读(732) 评论(0)

eureka监听各服务状态,下线、重连等,并做相应的处理

在一些场景下,我们需要监听eureka服务中心的一些状态,譬如某个微服务挂掉了,我们希望能监听到,并给管理员发送邮件通知。Eureka的server端会发出5个事件通知,分别是:EurekaInstanceCanceledEvent 服务下线事件EurekaInstanceRegisteredEvent 服务注册事件EurekaInstanceRenewedEvent 服务续约事件EurekaRe...
阅读(3116) 评论(1)

eureka集群高可用配置

网上讲这个东西的很多,抄来抄去的,大部分类似,多数没讲明白为什么那么配置。譬如eureka.client.register-with-eureka和fetch-registry是否要配置,配不配区别在哪里;eureka的客户端添加service-url时,是不是需要把所有的eureka的server地址都写上,还是只需要写一个server就可以了(因为server之间已经相互注册了)?如果写上了所...
阅读(2215) 评论(8)

zuul微服务网关的常用示例

微服务架构体系中,通常一个业务系统会有很多的微服务,比如:OrderService、ProductService、UserService...,为了让调用更简单,一般会在这些服务前端再封装一层,类似下面这样:前面这一层俗称为“网关层”,其存在意义在于,将"1对N"问题 转换成了"1对1”问题,同时在请求到达真正的微服务之前,可以做一些预处理,比如:来源合法性检测,权限校验,反爬虫之类...传统方式...
阅读(2041) 评论(0)

zuul设置熔断、断路器

在前面一篇文章中http://blog.csdn.net/tianyaleixiaowu/article/details/77884778,已经讲过了独立使用zuul进行反向代理了。在那篇文章中,没有使用eureka进行服务发现,而是使用简单的url配置,直接将用户请求发送到指定的url。这种做法适合于兼容一些老系统或者无法进行eureka服务注册的项目中,当时有一个东西没有提到,那就是熔断器。我...
阅读(1990) 评论(0)

zuul动态配置路由规则,从DB读取

前面已经讲过zuul在application.yml里配置路由规则,将用户请求分发至不同微服务的例子。zuul作为一个网关,是用户请求的入口,担当鉴权、转发的重任,理应保持高可用性和具备动态配置的能力。我画了一个实际中可能使用的配置框架,如图。当用户发起请求后,首先通过并发能力强、能承担更多用户请求的负载均衡器进行第一步的负载均衡,将大量的请求分发至多个网关服务。这是分布式的第一步。如果是使用do...
阅读(3435) 评论(0)

spring cloud网关zuul之filter注册

原文地址 https://my.oschina.net/u/3300636/blog/851984?nocache=1491877235421 zuul开启 首先由@EnableZuulProxy 注解是开启zuul的注解。 @EnableCircuitBreaker @EnableDiscoveryClient @Target({ElementType.TYPE}) @Retention(...
阅读(3340) 评论(0)
17条 共2页1 2 下一页 尾页
    个人资料
    • 访问:353105次
    • 积分:4411
    • 等级:
    • 排名:第8123名
    • 原创:100篇
    • 转载:39篇
    • 译文:0篇
    • 评论:148条
    博客专栏
    友情链接
    最新评论