自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(282)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Redis】Redis实现分布式锁

Redisson的分布式锁自带自动续期机制,提供专门用来监控和续期的Watch Dog看门狗,如果操作的共享资源的线程还未执行完的话,Watch Dog会不断延长锁的过期时间,进而保证锁不会因为超时而释放。基于Lua脚本保证解锁的原子性。Redis在执行Lua脚本时,可以以原子性的方式执行,确保原子性。默认每过10秒,看门狗会将锁的超时时间设置为30秒。给key设置过期时间。

2025-04-08 09:55:05 230

原创 【ES】深度分页

ES的结构可以简化为协调节点(Coordination g Node),与数据节点(Data Node)。协调节点将请求转发给数据节点,数据节点返回满足条件的TopN文档信息(至少包含id,score)。协调节点从k*TopN的文档信息中选出最终的TopN的结果的id发送给数据节点。数据节点根据id查询数据,返回给协调节点。ES分页的三种方式。

2025-03-21 16:42:13 607

原创 前后端分离的Netty + WebSocket实现聊天室

【代码】前后端分离的Netty + WebSocket实现聊天室。

2025-02-20 21:02:52 373

原创 【Redis】配置序列化器

FastJSON2相比与FastJSON更安全,更推荐使用。

2024-12-25 11:08:39 342

原创 【SpringAOP】JoinPoint和ProceedingJoinPoint详解

在Spring AOP中,ProceedingJoinPoint是JoinPoint的子接口,它专门用于环绕通知(Around advice)。ProceedingJoinPoint包含了被通知方法的执行信息,同时可以访问被通知方法的信息和参数。可以通过使用ProceedingJoinPoint接口来实现更加灵活和精细的环绕通知逻辑。使用方式与JoinPoint一致。} } }try {

2024-12-19 10:36:25 395

原创 【SpringSecurity】SpringSecurity+JWT实现登录

Spring Security 是一个功能强大且高度可定制的身份验证和访问控制框架。它是为Java应用程序设计的,特别是那些基于Spring的应用程序。Spring Security是一个社区驱动的开源项目,它提供了全面的安全性解决方案,包括防止常见的安全漏洞如CSRF、点击劫持、会话固定等。:Spring Security可以处理用户的身份验证过程,即确认用户是否是他们声称的人。它可以使用多种机制来进行身份验证,例如表单登录、HTTP基本认证、OAuth2、JWT等。

2024-12-16 16:07:04 1277

原创 【Sa-Token】Sa-Token 中的 Session会话

解决这个问题的关键在于,虽然两个设备登录的是同一账号,但是两个它们得到的token是不一样的, Sa-Token针对会话登录,不仅为账号id分配了Account-Session,同时还为每个token分配了不同的Token-Session。在登录时产生的Session,是分配给账号id的,而不是分配给指定客户端的,也就是说在PC、APP上登录的同一账号所得到的Session也是同一个,所以两端可以非常轻松的同步数据。那么这种请求访问记录应该存储在哪里呢?放在 Account-Session 里吗?

2024-12-16 15:18:11 443

原创 Caused by: com.mysql.cj.exceptions.UnableToConnectException: Public Key Retrieval is not allowed

在数据库连接 URL 中添加一个参数来允许公钥检索。这是解决这个问题的最直接方式。

2024-12-09 22:07:45 188

原创 【Elasticsearch】07-ES聚合

桶(Bucket)聚合:用来对文档做分组。

2024-12-03 15:42:28 431

原创 【Elasticsearch】06-JavaRestClient查询

将高亮结果解析出来。

2024-12-03 10:58:58 515

原创 【Elasticsearch】05-DSL查询

es最多只支持查询1万条数据。

2024-12-02 22:06:36 480

原创 【Elasticsearch】04-RestAPI

需要在父工程里面进行修改,防止版本覆盖。

2024-12-02 16:19:57 542

原创 【Elasticsearch】03-ES RESTFUL使用

【代码】【Elasticsearch】03-ES RESTFUL使用。

2024-12-02 09:43:07 326

原创 【Elasticsearch】02-ES倒排索引

ES也会对用户搜索内容也会进行分词。

2024-12-01 21:32:41 277

原创 【Elasticsearch】01-ES安装

安装elasticsearch。安装kibana。

2024-11-15 15:19:21 681

原创 【RabbitMQ】10-抽取MQ工具

在spring.factories设置。

2024-11-15 10:46:24 584

原创 【RabbitMQ】09-取消超时订单

【代码】【RabbitMQ】09-取消超时订单。

2024-11-14 16:26:42 708

原创 【RabbitMQ】08-延迟消息

正常队列不需要接受消息。死信交换机需要key和normalQueue一样。生产者。

2024-11-12 22:12:22 686

原创 【RabbitMQ】07-业务幂等处理

序列化设置唯一Id。

2024-11-11 16:42:33 726

原创 【RabbitMQ】06-消费者的可靠性

没有ack,mq就会一直保留消息。

2024-11-11 15:47:26 560

原创 【RabbitMQ】05-MQ可靠性

一旦出现消息堆积问题,RabbitMQ的内存占用就会越来越高,直到触发内存预警上限。此时RabbitMQ会将内存消息刷到磁盘上,这个行为成为PageOut. PageOut会耗费一段时间,并且会阻塞队列进程。因此在这个过程中RabbitMQ不会再处理新的消息,生产者的所有请求都会被阻塞。为了解决这个问题,从RabbitMQ的3.6.0版本开始,就增加了Lazy Queues的模式,也就是惰性队列。

2024-11-07 20:15:42 210

原创 【RabbitMQ】04-发送者可靠性

每个RabbitTemplate只能配置一个ReturnCallback,因此我们可以在配置类中统一设置。@Slf4j@Overridelog.error("触发return callback,");});由于每个消息发送时的处理逻辑不一定相同,因此ConfirmCallback需要在每次发消息时定义。@Test// 1.创建CorrelationData// 2.给Future添加ConfirmCallback@Override。

2024-11-07 19:30:38 559

原创 【RabbitMQ】03-交换机

广播。生产者向exchange发消息消费者监听exchange绑定的队列即可。

2024-11-05 20:41:39 647

原创 【RabbitMQ】02-Spring AMQP

【代码】【RabbitMQ】02-Spring AMQP。

2024-11-03 15:51:11 372

原创 【RabbitMQ】01-RabbitMQ

MQ可以有更好的并发性。

2024-11-03 13:22:19 498

原创 【SpringCloud】07-分布式事务与Seata

4. 依赖。

2024-10-28 21:17:15 335 1

原创 【SpringCloud】06-Sentinel

一个微服务出现问题导致一系列微服务都不可以正常工作。

2024-10-26 13:56:20 471 1

原创 【SpringCloud】05-配置中心

实现配置管理热更新。

2024-10-21 15:49:44 253

原创 【SpringCloud】04-Gateway网关登录校验

微服务之间的相互调用不会经过网关,因此不会保存用户信息。使用OpenFeign的拦截器。将用户信息写入请求头中。将微服务连接器写在common模块。

2024-10-21 14:19:27 617

原创 【SpringCloud】03-Gateway网关

网关:负责请求的路由、转发、身份校验。

2024-10-17 14:06:40 389

原创 【SpringCloud】02-Nacos注册中心

在cart-service的启动类上添加声明,扫描到ItemClient。在需要调用的包下面引入依赖。

2024-10-15 15:48:04 283

原创 【Docker】06-DockerCompose

【代码】【Docker】06-DockerCompose。

2024-10-08 15:02:33 393

原创 【Docker】05-Docker部署前端项目

【代码】【Docker】05-Docker部署前端项目。

2024-10-07 22:22:21 618

原创 【Docker】04-Docker部署Java后端

hm.cnf运行MySQL镜像。

2024-10-07 22:06:43 514

原创 【Docker】03-自制镜像

【代码】【Docker】03-自制镜像。

2024-10-07 21:20:41 400

原创 【LeetCode周赛】第 418 场

给你一个长度为 3 的整数数组 nums。现以某种顺序 连接 数组 nums 中所有元素的 二进制表示 ,请你返回可以由这种方法形成的 最大 数值。注意 任何数字的二进制表示 不含 前导零思路:暴力枚举。

2024-10-07 17:18:33 780

原创 【Docker】02-数据卷

数据卷(volume) 是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。

2024-09-26 22:30:12 532

原创 【Docker】01-Docker常见指令

Docker会下载镜像,运行的时候,创建一个隔离的环境,称为容器。

2024-09-26 21:41:57 752

原创 【SpringCloud】01-远程调用

【代码】【SpringCloud】01-远程调用。

2024-09-26 10:07:16 307

原创 【JUC】21-JUC总结

如果共享资源被占用,需要一定的阻塞等待唤醒机制保证锁分配。这个机制基于CLH队列的变体实现,将暂时获取不到锁的线程加入队列中,这个队列就是AQS同步队列的抽象表现。它将要请求共享资源的线程及自身的等待状态封装成队列的结点对象,通过CAS、自旋以及LockSupport.park() 的方式,维护state变量的状态,使并发达到同步效果。

2024-09-24 14:18:21 769

适合A100安装的mmdet3d

适合A100安装的mmdet3d

2024-03-20

Hadoop、HBase、Zookeeper安装部署

Hadoop、HBase、Zookeeper安装部署

2022-04-17

空空如也

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

TA关注的人

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