加载中
JDK核心JAVA源码解析(9) - hashcode 方法

本文基于 OpenJDK 11, HotSpot 虚拟机 在开发过程中我们可能会经常接触到hashcode这个方法来生成哈希码,那么底层是如何实现的?使用时有何注意点呢? hashcode() 方法底层实现 hashcode()...

Java GC详解 - 1. 最全面的理解Java对象结构 - 对象指针 OOPs

最近在抽时间阅读 JDK 的源码,主要是 GC 还有 Safepoint 相关的源码,发现很多我在之前拜读网上各种 JVM 原理大作时候由于没有看源码导致我对于底层原理的误解。果然,一百个人读水浒传,就...

09/16 17:55
1.2K
Spring Cloud Eureka 全解 (8) - 安全配置

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

2019/08/30 10:17
132
Spring Cloud Eureka 全解 (7) - 生产配置最佳实践

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

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

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

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

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

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

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

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

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

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

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

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

系列目录: Spring Cloud Eureka 全解 (1) - 总览篇 Spring Cloud Eureka 全解 (2) - 整体流程篇 Spring Cloud Eureka 全解 (3) - 核心流程-服务注册与取消详解 Spring Cloud Eureka ...

JVM相关 - StackOverflowError 与 OutOfMemoryError

本文基于 Java 15 StackOverflowError 与 OutOfMemoryError 是两个老生常谈的 Java 错误。Java 中的虚拟机错误 VirtualMachineError 包括以下四种: 我们比较关心的就是 StackOverflowError...

JFR 定位因为 SSL 导致 CPU Load 飚高的问题

问题场景 在某一时刻,某个微服务的某个实例 CPU 负载突然飚高: 同时建立了很多数据库链接: 其他实例没有这个现象。 问题定位 由于建立了很多数据库链接,猜想可能是数据库比较慢,查看数据...

09/27 19:45
0
分布式系统设计模式 - 预写日志(Write Ahead Log)

原文地址:https://martinfowler.com/articles/patterns-of-distributed-systems/wal.html Write-Ahead log 预写日志 预写日志(WAL,Write-Ahead Log)将每次状态更新抽象为一个命令并追加写...

分布式系统设计模式 - 最低水位线(Low-Water Mark)

设计模式翻译自:https://martinfowler.com/articles/patterns-of-distributed-systems/low-watermark.html 最低水位线(Low-Water Mark) 最低水位线是指在 WAL(Write Ahead Log)预写日志...

分布式系统设计模式 - 分割日志(Segmented Log)

分割日志(Segmented Log) 将大文件切分为更容易处理的多个更小的文件。 问题背景 单一的日志文件可能会增长到很大,并且在程序启动时读取从而成为性能瓶颈。老的日志需要定时清理,但是对于...

HashMap 的 defaultLoadFactor 的一种推导计算思路

为啥需要 defaultLoadFactor 现在主流的 HashMap,一般的实现思路都是开放地址法+链地址法的方式来实现。 即数组 + 链表的实现方式,通过计算哈希值,找到数组对应的位置,如果已存在元素,就...

Project Reactor 深度解析 - 2. 响应式编程调试,FLow的概念设计以及实现

响应式编程的首要问题 - 不好调试 我们在分析传统代码的时候,在哪里打了断点,就能看到直观的调用堆栈,来搞清楚,谁调用了这个代码,之前对参数做了什么修改,等等。但是在响应式编程中,这...

08/03 19:50
34
Project Reactor 深度解析 - 1. 响应式编程介绍,实现以及现有问题

现在, Java 的各种基于 Reactor 模型的响应式编程库或者框架越来越多了,像是 RxJava,Project Reactor,Vert.x 等等等等。在 Java 9, Java 也引入了自己的 响应式编程的一种标准接口,即j...

07/29 20:10
311
Spring Cloud升级之路 - Hoxton - 10. 网关重试带Body的请求Body丢失的问题

带 Body 的重试 Body 丢失 之前我们的配置里面,只对 Get 请求针对 500 响应码重试,但是针对像 Post 这样的请求,只对那种根本还没到发送 Body 的阶段的异常(例如连接异常)这种重试,那么...

JDK核心JAVA源码解析(4) - 堆外内存、零拷贝、DirectByteBuffer以及针对于NIO中的FileChannel的思考

想写这个系列很久了,对自己也是个总结与提高。原来在学JAVA时,那些JAVA入门书籍会告诉你一些规律还有法则,但是用的时候我们一般很难想起来,因为我们用的少并且不知道为什么。知其所以然方...

07/20 19:11
16

没有更多内容

加载失败,请刷新页面

返回顶部
顶部