张哈希的博客

MyCat 1.6源代码贡献者之一。为全栈而努力,喜欢各种轮子

排序:
默认
按更新时间
按访问量

Spring Cloud Ribbon 全解 (8) - SpringCloud环境下Ribbon+Eureka配置

本文基于SpringCloud-Dalston.SR5 一般SpringCloud环境下是Ribbon+Eureka一起使用的: SpringCloud环境下Ribbon+Eureka配置 示例项目 实例项目地址:https://github.com/HashZhang/Scanf...

2018-05-16 11:05:24

阅读数:621

评论数:0

Spring Cloud Ribbon 全解 (7) - SpringCloud环境下纯Ribbon(不包含Eureka)重试配置

本文基于SpringCloud-Dalston.SR5 前面已经分析了Ribbon各个组件详细的源码,以及整体的流程 SpringCloud环境下纯Ribbon(不包含Eureka)使用与启动分析: 示例项目 以下项目可以参考:https://github.com/HashZhan...

2018-05-16 11:03:08

阅读数:542

评论数:0

Spring Cloud Ribbon 全解 (6) - SpringCloud环境下纯Ribbon(不包含Eureka)使用与启动分析

本文基于SpringCloud-Dalston.SR5 前面已经分析了Ribbon各个组件详细的源码,以及整体的流程 SpringCloud环境下纯Ribbon(不包含Eureka)使用与启动分析: 示例项目 以下项目可以参考:https://github.com/HashZhan...

2018-05-16 11:01:48

阅读数:515

评论数:1

Spring Cloud Ribbon 全解 (5) - 基本组件实现源码(3)

本文基于SpringCloud-Dalston.SR5 我们继续分析如下组件: 所有Ribbon负载均衡器需要实现的接口IClient 服务实例列表维护机制实现的接口ServerList 负载均衡数据记录LoadBalancerStats 负责选取Server的接口ILoadBalancer...

2018-05-08 08:36:34

阅读数:617

评论数:0

Spring Cloud Ribbon 全解 (4) - 基本组件实现源码(2)

本文基于SpringCloud-Dalston.SR5 我们继续逐个分析 所有Ribbon负载均衡器需要实现的接口IClient 服务实例列表维护机制实现的接口ServerList 负载均衡数据记录LoadBalancerStats 负责选取Server的接口ILoadBalancer 负载...

2018-05-08 08:34:32

阅读数:575

评论数:0

Spring Cloud Ribbon 全解 (3) - 基本组件实现源码(1)

本文基于SpringCloud-Dalston.SR5 上一篇我们了解到Ribbon主要由如下几个组件组成: 所有Ribbon负载均衡器需要实现的接口IClient 服务实例列表维护机制实现的接口ServerList 负载均衡数据记录LoadBalancerStats 负责选取Server的...

2018-03-27 19:14:43

阅读数:743

评论数:0

Spring Cloud Ribbon 全解 (2) - 基本组件简介

本文基于SpringCloud-Dalston.SR5 对于一个负载均衡器,就是以用户请求为输入,请求响应为输出的代理模块。 这个模块基本上就是包括一个服务实例列表,根据请求还有负载均衡规则选择一个合适的实例来执行请求并返回响应。 这个服务实例列表,一般包含每个实例基本信息,然后还有...

2018-03-27 11:53:12

阅读数:140

评论数:0

Spring Cloud Eureka 全解 (8) - 安全配置

本文基于SpringCloud-Dalston.SR5 一般的,Eureka在内网服务,我们不会对于外网暴露Eureka端口,所以一般Eureka不做任何验证。假设我们想进一步增强Eureka的安全性,可以结合spring security来简单配置一些安全设置 首先在Spring Cloud...

2018-03-26 18:14:21

阅读数:186

评论数:0

Spring Cloud Ribbon 全解 (1) - 总览篇

本文基于SpringCloud-Dalston.SR5 Ribbon是一个客户端负载均衡解决方案,简单来说,就是从Eureka获取可用服务实例列表,然后将请求根据某种策略发到这些实例上面执行 What is Spring Cloud Netflix? 其官方文档中对自己的定义是: ...

2018-03-05 18:11:25

阅读数:1759

评论数:0

Spring Cloud Eureka 全解 (7) - 生产配置最佳实践

本文基于SpringCloud-Dalston.SR5 可以实现比较快的服务上下线: EurekaServer配置: #eureka server刷新readCacheMap的时间,注意,client读取的是readCacheMap,这个时间决定了多久会把readWriteCache...

2018-01-24 17:47:46

阅读数:5403

评论数:0

Spring Cloud Eureka 全解 (6) - 一些热门QA

本文基于SpringCloud-Dalston.SR5 Eureka服务实例启动时,是否会立刻向EurekaServer注册? 是的,立刻会。 EurekaClient在每次实例状态发生改变时,有一个Listener: statusChangeListener = new Appl...

2018-01-24 17:44:02

阅读数:4693

评论数:2

Spring Cloud Eureka 全解 (5) - 自我保护机制

本文基于SpringCloud-Dalston.SR5 自我保护机制 关闭自我保护机制(默认是打开的):eureka.server.enable-self-preservation=false 自我保护机制:默认情况下,如果Eureka Server在一定时间内没有接收到某个微服...

2018-01-24 17:07:36

阅读数:4905

评论数:0

Spring Cloud Eureka 全解 (4) - 核心流程-服务与实例列表获取详解

本文基于SpringCloud-Dalston.SR5 关于服务与实例列表获取 EurekaClient端 我们从Ribbon说起:EurekaClient也存在缓存,应用服务实例列表信息在每个EurekaClient服务消费端都有缓存。一般的,Ribbon的LoadBalancer...

2018-01-24 16:29:58

阅读数:4980

评论数:0

一次由于YoungGC引起的性能问题分析

问题现象 应用用druid连接池,设置慢SQL时间为500ms。 在线上应用报了一些但是不多的慢查询日志,并且这个慢查询日志居然是单条插入的语句。 后台数据库是MySQL,有查询统计日志监控,并没有发现很慢的插入语句。 觉得很奇怪,需要仔细定位下 问题定位 为了确认问题,搭建压测环...

2018-01-19 12:26:26

阅读数:474

评论数:0

Log4j2一些tips与最佳实践

Log4j2相对于log4j来说扩展了多种接口,并重新定义了日志记录流程,并且引入了一些框架例如Disruptor来加速。Log4j2无论在日志记录上,还有效率速率上都相对于log4j有很大的进步,下面我们来看一些比较有意思的使用和配置的最佳实践。 使用Tip 1.方法参数使用Java...

2018-01-15 18:23:33

阅读数:5265

评论数:0

Tomcat容器下Zuul网关加解密后的第一次请求出现400错误的问题

问题现象 某些前端发来的请求会在前端加密发送到网关,并在网关解密之后发到真正的微服务,并将结果加密返回给前端。 实现网关加密后,发现一次加密请求后,紧接着的非加密GET请求,就会出现400的错误。再发一次相同的GET请求,就会正常,观察后端微服务的收到网关请求的accessLog,发现接收到的...

2018-01-05 17:37:32

阅读数:5106

评论数:0

Ribbon对于SocketTimeOutException重试的坑以及重试代码解析

背景本文基于Spring-Cloud, Daltson SR4微服务一般多实例部署,在发布的时候,我们要做到无感知发布;微服务调用总会通过Ribbon,同时里面会实现一些重试的机制,相关配置是:#最多重试多少台服务器 ribbon.MaxAutoRetriesNextServer=2 #每台服务器...

2017-12-26 21:00:47

阅读数:1351

评论数:0

spring feign http客户端连接池配置以及spring zuul http客户端连接池配置解析

背景一般在生产项目中, Feign会使用HTTP连接池而不是默认的Java原生HTTP单路由单长连接;而是使用连接池。Zuul直接使用Ribbon的Http连接池;Feign和网关Zuul的RPC调用,实际上都是HTTP请求。HTTP请求,如果不配置好HTTP连接池参数的话,会影响性能,或者造成堆...

2017-12-08 16:04:55

阅读数:2579

评论数:8

Spring Cloud Eureka 全解 (3) - 核心流程-服务注册与取消详解

本文基于SpringCloud-Dalston.SR5 关于服务注册 开启/关闭服务注册配置:eureka.client.register-with-eureka = true (默认) 什么时候注册? 应用第一次启动时,初始化EurekaClient时,应用状态改变:从...

2017-11-29 18:54:34

阅读数:4989

评论数:3

Spring Cloud Eureka 全解 (2) - 整体流程篇

本文基于SpringCloud-Dalston.SR5 之前我们看过这个整体流程图: 接下来我们来仔细分析下这个流程,先不涉及源代码,只说流程 服务提供者EurekaClient -> EurekaServer 每个服务会生成自己的InstanceInfo: 除了这些,...

2017-11-28 19:09:08

阅读数:506

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭