自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 RedissonRateLimiter限流器原理解析

通过redisson客户端获取一个限流器对象时,只需要指定限流器名称即可获取参考代码如下//如果有密码还要链式设置密码 RedissonClient redisson = Redisson . create(config);// 获取一个限流器 RRateLimiter rateLimiter = redisson . getRateLimiter("yourLimiterName");

2024-08-25 14:00:46 1996

原创 nacos的配置更新同步客户原理

Nacos 作为配置中心,在配置发生变化时通过**长轮询(Long Polling)**机制实现配置的实时同步。其核心原理是客户端发起一个带有超时时间的配置监听请求,服务端会持有该请求直到配置变更或超时。当配置变更时,服务端立即响应,客户端随即拉取最新配置。

2025-03-16 14:47:13 327

原创 git reset 四个模式:soft、mixed、hard、keep区别

首先这里创建了两个文件a.txt 和 b.txt在a.txt变更2中仅修改了a.txt;b.txt没有变更然后将b修改后,进行了add操作,提交到了暂存区:使用git status可以看到暂存区记录了b.txt的修改现在我们再分别将a、b文件进行修改如果直接使用git reset --keep进行回退会发现报错,因为上一个版本修改了a文件,并且我们工作区也对a进行了修改,这时git不允许回退。

2023-12-02 12:50:59 3105

原创 纯java从0到1实现一个布隆过滤器

纯java从0到1实现一个布隆过滤器gitee地址本文简介布隆过滤器原理主要介绍如何使用java实现一个bloom filter一、位图我们知道布隆过滤器实际上就是一个超级大的位图;上面维护了所有黑名单(或者白名单)数据。一个key过来或根据hash运算获取到所有对应位图上的点位,判断这些点位是否全为1.如果全为1,那么判定此key已经添加进了位图(存在一定误判率)若果有一个不为1,那么此key一定没有添加进位图(不存在误判)二、几个重要参数样本量(个):n失误率(小数):p

2021-11-14 21:52:49 256

原创 增强for循环引发并发修改异常的原理分析

增强for循环(迭代器)引发并发修改异常ConcurrentModificationException是RuntimeException的一个子类,一般在多线程操作没有线程安全机制的集合对象的时候会触发这个异常(如ArrayList,HashMap等等)需要特别注意的是,在进行集合的增强for循环遍历时,在增强for循环内部,通过集合的引用直接操作集合也会触发这个异常。//对集合进行操作引发并发修改异常public static void main(String[] args) {

2021-04-25 17:12:31 1831

原创 使用idea集成maven创建Struts2项目

使用idea继承maven创建Struts2项目前言本科毕设课题是基于Struts2框架设计一个B/S架构的管理系统,因为框架没得选择,只能使用Struts2来,这里记录了如何使用idea继承maven项目管理工具来创建Struts工程的具体步骤。0.环境简介idea:2019.3.3maven:3.6.3jdk:1.8.0_2611.创建web项目2.添加struts2依赖<dependency> <groupId>org.apache.struts<

2021-03-16 22:26:40 1067 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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