
Spring Cloud
文章平均质量分 96
cyjrun
这个作者很懒,什么都没留下…
展开
-
Spring Cloud之极端续租间隔时间的影响
欢迎访问陈同学博客原文本文基于某环境一个真实Case,它配置了非常极端的续租间隔时间。虽然知道服务注册的基本知识,但未深入了解过,正好基于这个Case学习下。问题现象先简述下问题现象。日志中大约以几秒一次的频率循环出现 TimedSupervisorTask 67 task supervisor timed out摘除流量后,Eden区约800M,Minor GC频率约...原创 2018-08-29 09:30:09 · 1355 阅读 · 0 评论 -
Zuul 动态路由源码及几种实现方式
欢迎访问陈同学博客原文本文介绍Zuul路由的源码以及实现动态路由的几种方式,路由信息可以来自Properties文件、DB、Apollo等。可以阅读 Spring Cloud源码学习之Zuul 简要了解路由源码流程。本文基于 Spring Cloud Finchley.SR1,Spring Boot 2.0.6.RELEASE。路由源码本文基于下图场景做演示,文中代码来自源码,但存在...原创 2019-06-06 09:13:08 · 1664 阅读 · 0 评论 -
Feign 上传文件的常见问题
欢迎访问陈同学博客原文Feign 作为 Spring Cloud 中 RPC 工具,利用注解来描述接口,简化了 Java HTTP Client 的调用过程,隐藏了实现细节。本文将介绍利用 Feign 上传文件的几个常见问题。如何上传一个/组文件如何上传多种文件MultipartFile 参数不能为空问题未提供 MultipartFile 参数接口报 no multipart b...原创 2019-04-10 23:14:12 · 5284 阅读 · 5 评论 -
Spring Cloud 源码学习之 Feign
欢迎访问陈同学博客原文Spring Cloud Doc: Declarative REST Client: Feign本文学习了 Spring Cloud 中 openfeign 组件,代码基于 Finchley.SR1 版本。什么是Feignspring-cloud-openfeign 在 Github 描述了其特性:Declarative REST Client: Feign...原创 2019-01-09 21:23:22 · 278 阅读 · 0 评论 -
Spring Cloud Hystrix 源码学习合集
欢迎访问陈同学博客原文Hystrix: Latency and Fault Tolerance for Distributed Systems近期逐渐学习了 Hystrix 这位 “守护神” 的部分源码,本文作为 Hystrix 系列的小结篇。在刚看完一丢丢源码时,Netflix 官方便已宣布进入 “维护模式”,版本定格在 1.5.18,官宣该版本已足够满足现存应用的需求。同时,官方也...原创 2019-01-15 09:25:09 · 401 阅读 · 0 评论 -
Spring Cloud 源码学习之 Hystrix 请求缓存
欢迎访问陈同学博客原文本文学习了 Hystrix 请求缓存机制。场景先用一个小场景演示下请求缓存。向 服务A 查询一页数据,共10条,每条都有一个orgId字段,需要根据orgId向 服务B 查询orgName。10条数据中orgId有8条相同,剩余2条相同。下面写下伪代码:方式一:循环10次:for (org : 10条数据) { org.setOrgName(向服务B...原创 2018-12-19 00:06:55 · 257 阅读 · 0 评论 -
Spring Cloud 源码学习之 HystrixRequestContext
欢迎访问陈同学博客原文前面写过 Spring Cloud 之 Hystrix 跨线程传递数据,写的是跨线程传递数据的表象,其实就是调试了一把,记录一下。今天写下核心:HystrixRequestContext。HystrixRequestContext 表示 request level的context,用于存储 request level 的数据。与此相对的是 thread level的数...原创 2018-12-15 13:33:17 · 1408 阅读 · 0 评论 -
Spring Cloud 源码学习之 Hystrix Metrics 收集
欢迎访问陈同学博客原文文中源码基于 Spring Cloud Finchley.SR1、Spring Boot 2.0.6.RELEASE.Hystrix 其他文章:Spring Cloud 源码学习之 Hystrix 入门、Spring Cloud 源码学习之 Hystrix 工作原理、Spring Cloud 之 Hystrix 跨线程传递数据在 Hystrix Command ...原创 2018-12-13 21:28:05 · 1092 阅读 · 0 评论 -
Spring Cloud 源码学习之 Hystrix 熔断器
欢迎访问陈同学博客原文文中源码基于 Spring Cloud Finchley.SR1、Spring Boot 2.0.6.RELEASE.本文学习了Hystrix的原理、配置和源码,包含滑动窗口、状态变化等。简介circuit-breaker: circuit表示电路,大家译为熔断器非常精准。回想起小时候,家里保险丝突然被烧断,需 手工更换一根新的保险丝;后来,保险丝被取代,电...原创 2018-12-13 21:24:15 · 369 阅读 · 0 评论 -
Spring Cloud 源码学习之 Hystrix 工作原理
欢迎访问陈同学博客原文Spring Cloud 源码学习之 Hystrix 入门Spring Cloud 之 Hystrix 跨线程传递数据本文学习了 Hystrix 工作原理及源码,关注点在整体处理流程,不涉及具体的实现细节。后续将逐渐写Metrics收集、断路器、隔离、请求缓存等,有兴趣可以关注奥。下面 流程图 来源于 Hystrix Wiki,展现了 Hystrix 工作原理...原创 2018-11-26 23:46:36 · 335 阅读 · 0 评论 -
Spring Cloud 之 Hystrix 跨线程传递数据
欢迎访问陈同学博客原文本文以一个技术场景来学习 Hystrix 跨线程传递数据的知识。将先简述ThreadLocal、InheritableThreadLocal跨父子线程传递数据,再进入主题。基于Spring Boot 2.0.6.RELEASE, Spring Cloud Finchley.SR1。技术场景服务A 通过 Feign + Hystrix 调用服务B,服务间调用时需传...原创 2018-10-29 20:24:55 · 2881 阅读 · 0 评论 -
Spring Cloud 实战之 Zuul 网关不响应任何请求
欢迎访问陈同学博客原文本文基于一个线上真实问题。在 Zuul 无任何安全防护措施时,若遇到较大流量(单个Zuul应用在默认配置下200并发即可),将产生非常严重的后果。本文主要是探寻下问题产生的原因。问题背景与即时处理先简述下问题背景与即时处理。网络拓扑:请求 -> nginx -> 容器编排工具的LB(Haproxy) -> 网关(Zuul) -> 具体...原创 2018-09-25 22:29:02 · 5476 阅读 · 0 评论 -
Spring Cloud 源码学习之 Hystrix 入门
欢迎访问陈同学博客原文 Hystrix 功能非常多,本文仅对 Hystrix 源码做入门学习。为便于阅读,文中源码有较大删减,仅保留入门学习必要的源码,降低其他逻辑的干扰。从 Hystrix 名字说起Spring Cloud 众多组件,了解其名字背后的寓意也是一种乐趣。下面是我拼的一张图,分别为:Hystrix、豪猪、刺猬。Hystrix 译为 “豪猪”,豪猪...原创 2018-09-16 22:54:20 · 1053 阅读 · 0 评论 -
微服务中使用 OpenJ9 JVM 内存占用降60%(相对HotSpot)
欢迎访问陈同学博客原文随着微服务的普及,许多企业踏上微服务之旅。微服务化后,应用数量可能高一个数量级。一般企业,以前三五个应用能支撑业务,微服务化之后应用数量可能多达几十个。每个微服务往往独立部署,内存的消耗自然也高居不下,以前两台8核16G机器指不定就能跑起来,现两台16核64G还不一定够用,同时由于多套环境的存在加上容器编排工具(如K8s)所需的资源,硬件资源的投入自然是成倍增加。在...原创 2019-07-21 21:36:20 · 10404 阅读 · 0 评论