- 博客(19)
- 收藏
- 关注
原创 MethodHandle------方法句柄介绍与使用
MethodHandle 为 Java 提供了一种更高效、灵活、类型安全的方式来进行动态方法调用。它是实现动态代理、动态语言支持以及其他高级编程模型的重要工具。
2024-11-21 23:56:13
451
原创 Ribbon负载均衡源码解析
Ribbon 允许你实现自定义的负载均衡策略,只需要实现 IRule 接口并重写 choose 方法即可。@Override// 自定义负载均衡逻辑@Bean// 使用自定义的负载均衡策略负载均衡配置示例ribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RoundRobinRule # 负载均衡策略ConnectTimeout: 3000 # 连接超时设置ReadTimeout: 3000 # 读取超时设置。
2024-11-18 22:31:29
1118
原创 Kafka的Rebalance机制与分区分配策略详解
Kafka 中的 Rebalance(重平衡)机制是在消费者组的成员发生变化时,重新分配分区以确保每个消费者都能处理适当数量的分区。这种机制对于保证数据消费的平衡性和系统的高可用性至关重要。有新的消费者加入消费者组时,需要重新分配分区,以便新的消费者也能接收到数据。消费者退出或崩溃时,组内的分区需要重新分配给剩余的消费者。主题的分区数量增加或减少时,也会触发 Rebalance。如果消费者组的协调器发生变化,也会触发 Rebalance。
2024-07-25 20:40:28
1223
原创 Kafka参数解析--acks
在Kafka中,acks参数用于控制生产者在发送消息时需要等待多少个副本确认收到消息。这直接影响消息的持久性保证和系统的吞吐量。
2024-07-23 13:59:09
519
原创 对象内置锁ObjectMonitor
ObjectMonitor 是 HotSpot JVM 实现中用于对象监视器(即同步监视器)的数据结构。它用于实现 Java 中的 synchronized 关键字和 wait/notify 机制。
2024-06-20 12:34:23
257
原创 ForkJoin简单使用
ForkJoin框架适用于需要递归分解的并行任务,如数组求和、快速排序、图像处理、斐波那契数列等。通过将大任务分解为更小的子任务并行执行,可以充分利用多核处理器,提高计算效率。
2024-06-11 21:50:02
515
原创 Spring源码解读之AbstractApplicationContext
【代码】Spring源码解读之AbstractApplicationContext
2024-03-28 16:16:32
441
原创 Spring源码解读之GenericApplicationContext
【代码】Spring源码解读之GenericApplicationContext
2024-03-28 14:03:10
545
原创 解决No spring.config.import property has been defined问题
原因 :SpringCloud 2020.* 版本把bootstrap禁用了,导致在读取文件的时候读取不到而报空指针,所以我们只要把spring-cloud-starter-bootstrap导入进来就会生效了。解决No spring.config.import property has been defined问题。
2024-03-11 19:34:01
1556
1
原创 Spring源码解读之DefaultSingletonBeanRegistry
【代码】Spring源码解读之DefaultSingletonBeanRegistry。
2021-11-15 15:01:42
245
原创 Unsafe源码解析
/* * Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU Gen
2021-10-21 23:52:42
276
原创 HashMap源码解析
package java.util;import java.io.IOException;import java.io.InvalidObjectException;import java.io.Serializable;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;import java.util.function.BiConsumer;import java.util.function.B
2021-10-10 21:03:06
243
原创 使用Stream流创建斐波那契数列
方法一:使用Stream.iterate()方法生成//斐波那契数列 Stream.iterate(new int[]{0, 1}, t -> new int[]{t[1], t[0] + t[1]}) .limit(20) .map(t -> t[0]) .forEach(System.out::println);*在java9中iterate(
2021-09-23 19:19:56
274
翻译 谈谈java.lang包
对JVM平台来说,java.lang包中的类至关重要,因为这个包中的很多类我们都经常用到,如:Object类(java.lang.Object);String类(java.lang.String);基本数据类型包装类(java.lang包中的Integer、Long、Short、Char、Float和Double);异常和错误(java.lang.Exception和java.lang.Error)。下图是这些类之间的层级关系:Object类java.lang包中的Object类是其他所
2021-08-04 20:08:59
1140
原创 Spring Boot使用@ConfigurationProperties踩过的坑
使用@ConfigurationProperties(prefix = " ")批量注入时提示spring boot configuration annotation processor not configured解决方案maven工程在pom.xml文件中引入坐标<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-configuration-processor --><
2021-08-02 00:17:40
357
原创 谈谈Java中遍历Map集合的几种方式
Java中遍历Map集合有很多种方法,从最开始的iterator,到Java5的For-Each,再到Java8中的Lambda。 下面,让我们一起使用具体的代码来实现以及对各自的优缺点进行分析:方法一:使用Iterator进行遍历 Map<String, Object> map = new HashMap<>(); //获取EntrySet() Set<Map.Entry<Stri...
2021-07-29 15:39:10
319
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人