首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
黑暗也有阳光
掘友等级
软件工程师
一个喜欢学习探索、不断追求目标的小小白
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
7
文章 7
沸点 0
赞
7
返回
|
搜索文章
黑暗也有阳光
软件工程师
·
1月前
关注
RocketMQ Java消费端默认并发消费详解
默认并发消费的含义在RocketMQ的Java客户端中,消费者默认采用并发消费模式(即MessageListenerConcurrently)。这意味着消费者会启动多个线程...
0
评论
分享
黑暗也有阳光
软件工程师
·
1月前
关注
Sentinel 与 Hystrix 熔断降级机制对比解析
一、fallback 与 blockHandler 的执行逻辑 当 @SentinelResource( 两者都配置时,Sentinel 会根据不同的触发条件选择不同的执行...
1
1
分享
黑暗也有阳光
软件工程师
·
1月前
关注
@FeignClient 中 fallbackFactory 与 fallback 的区别详解
在 Spring Cloud Feign 集成 Hystrix 时,fallback 和 fallbackFactory 都用于服务降级,但它们在使用方式和能力上有重要区别...
1
评论
分享
黑暗也有阳光
软件工程师
·
1月前
关注
java中为什么hashmap的大小必须是2倍数
高效计算索引(核心原因) HashMap通过哈希值确定元素在数组中的位置,计算索引的公式为: index = hash(key) & (n - 1) 其中 n 是数组长度,...
0
评论
分享
黑暗也有阳光
软件工程师
·
1月前
关注
java 集合中arrayList为什么查询比较快,而插入和删除比较慢
底层数据结构 ArrayList 基于动态数组实现,内部通过一个连续的数组存储元素。数组的内存空间是连续分配的,并且每个元素都有固定的索引位置。 查询快的原因 由于数组是连...
1
1
分享
黑暗也有阳光
软件工程师
·
1月前
关注
Java集合中的List索引为什么从0开始,而不是从1开始
1. 内存地址计算效率 数组在内存中是连续存储的,每个元素的位置通过基地址 + 偏移量计算: 若索引从0开始: 第一个元素地址 = 基地址 + 0 × 元素大小 → 直接等...
0
评论
分享
黑暗也有阳光
软件工程师
·
3月前
关注
为什么springboot的jar包可以直接运行
Spring Boot 的 JAR 包可以直接运行的核心原理在于它采用了 可执行 JAR(Fat JAR) 技术,将应用代码、依赖库、嵌入式服务器(如 Tomcat、Je...
0
评论
分享
黑暗也有阳光
软件工程师
·
3月前
关注
spring中beanFactory与factoryBean有什么区别
在 Spring 框架中,BeanFactory和FactoryBean是两个重要的概念,但它们的功能和用途截然不同。下面从定义、核心作用、应用场景等方面详细分析它们的区别...
1
评论
分享
黑暗也有阳光
软件工程师
·
3月前
关注
java对象在内存中的布局
java对象在内存中的布局是什么样的 在 HotSpot 虚拟机里,Java 对象在内存中的布局主要分为三个部分,下面为你详细介绍: 对象头(Object Header) ...
0
评论
分享
黑暗也有阳光
软件工程师
·
3月前
关注
tomcat为什么要自定义类加载器
Tomcat 作为 Java Web 服务器,自定义类加载器主要是为了解决以下核心问题: 1. 隔离不同 Web 应用 背景:Tomcat 通常需要同时运行多个 Web 应...
0
评论
分享
黑暗也有阳光
软件工程师
·
3月前
关注
ReentrantLock分为公平锁和非公平锁,那底层分别是如何实现的呢
在 Java 里,ReentrantLock借助 AQS(AbstractQueuedSynchronizer)来实现公平锁和非公平锁,不过它们的实现方式存在差异。下面为你...
0
评论
分享
黑暗也有阳光
软件工程师
·
3月前
关注
java之ForkJoinPool 底层原理
ForkJoinPool 底层原理 1. 工作窃取算法(Work-Stealing) 每个工作线程维护自己的双端队列(Deque) 线程优先处理自己队列中的任务(LIFO顺...
0
评论
分享
黑暗也有阳光
软件工程师
·
5月前
关注
java如何排查cpu飙高问题
在 Java 里排查 CPU 飙高问题,可按以下步骤进行: 1. 定位高 CPU 进程 首先要找出占用 CPU 过高的进程 ID(PID)。在 Linux 系统下,可使用t...
0
评论
分享
黑暗也有阳光
软件工程师
·
5月前
关注
java中如何排查死锁,有哪些方法
死锁代码 1. 使用 jstack 命令 jstack 属于 JDK 自带的工具,能够打印出 Java 进程中线程的堆栈信息,从而协助发现死锁。 步骤: 先通过 jps 命...
1
评论
分享
黑暗也有阳光
软件工程师
·
6月前
关注
如何防止重复下单
主要利用一锁二判三更新 提交订单按钮置灰 请求唯一ID+数据库唯一ID redis分布式锁+请求唯一ID 创建 Redis 工具类 创建一个 Redis 工具类,用于操作 ...
0
评论
分享
黑暗也有阳光
软件工程师
·
6月前
关注
springboot消息堆积如何破局,如何实现高吞吐零失误
在 Spring Boot 应用中,消息堆积是一个常见的问题,它可能会导致系统性能下降、响应时间变长甚至出现故障。以下是几种解决消息堆积问题以实现高吞吐零失误的方案,并结合...
1
评论
分享
黑暗也有阳光
软件工程师
·
6月前
关注
Spring Boot 中整合 Feign 客户端时,配置日志的多种方式
1. 配置日志级别 可以通过在application.properties或application.yml文件中设置 Feign 客户端接口的日志级别来控制日志输出。 ap...
1
评论
分享
黑暗也有阳光
软件工程师
·
6月前
关注
springboot利用Redisson 实现缓存与数据库双写不一致问题
使用了 Redisson 来操作 Redis 分布式锁,主要功能是从缓存和数据库中获取商品信息,以下是针对并发时更新缓存和数据库带来不一致问题的解决方案 1. 基于读写锁和...
5
评论
分享
黑暗也有阳光
软件工程师
·
6月前
关注
redis中5种基本数据类型对应的底层数据结构以及使用场景
数据结构 数据结构总览表 字符串(String) 简单动态字符串(SDS) :这是 Redis 对字符串的底层实现,与 C 语言传统字符串不同。SDS 结构体记录了字符串...
0
评论
分享
黑暗也有阳光
软件工程师
·
6月前
关注
java之jdk的动态代理工具
1. 定义接口 首先,我们需要定义一个接口,代理对象将实现这个接口。 2. 实现接口 创建一个类来实现上述定义的接口。 3. 创建代理处理器 代理处理器是实现 Invoca...
0
评论
分享
下一页
个人成就
文章被点赞
34
文章被阅读
41,328
掘力值
1,653
关注了
3
关注者
6
收藏集
143
关注标签
0
加入于
2021-09-03