自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 6、ThreadLocal 详解

JVM 利用设置 ThreadLocalMap 的 Key 为弱引用,来避免内存泄露。JVM 利用调用 remove、get、set 方法的时候,回收弱引用。当 ThreadLocal 存储很多 Key 为 null 的 Entry 的时候,而不再去调用 remove、get、set 方法,那么将导致内存泄漏。使用线程池+ ThreadLocal 时要小心,因为这种情况下,线程是一直在不断的重复运行的,从而也就造成了 value 可能造成累积的情况。

2023-07-08 10:28:05 185

原创 5、JMM和并发三大特性

在JSR-133之前的旧Java内存模型中,虽然不允许volatile变量之间重排序,但旧的Java。64位的long型和double型变量,只要它是volatile变量,对该变量的读/写就具有原子性。变量与普通变量的重排序,确保volatile的写-读和锁的释放-获取具有相同的内存语义。器指令进行重排序,使机器指令能更符合CPU的执行特性,最大限度的发挥机器性能。的结果相等,那么指令的执行顺序可以与代码顺序不一致,此过程叫指令的重排序。思考:下面的Java程序中x和y的最终结果是什么?

2023-07-02 20:07:30 158

原创 4、等待通知机制

这里面有什么问题呢?

2023-07-01 16:54:56 144

原创 2、认识 Java 里的线程

注意:处于死锁状态的线程无法被中断。

2023-07-01 16:18:39 120

原创 3、深入学习 Java 的线程

为什么用户线程又被称为协程呢?我们知道,内核线程的切换开销是来自于保护和恢复现场的成本, 那如果改为采用用户线程, 这部分开销就能够省略掉吗?答案还是“不能”。但是,一旦把保护、恢复现场及调度的工作从操作系统交到程序员手上,则可以通过很多手段来缩减这些开销。由于最初多数的用户线程是被设计成协同式调度(Cooperative Scheduling)的,所以它有了一个别名——“协程”(Coroutine) 完整地做调用栈的保护、恢。

2023-07-01 16:17:14 96

原创 1、多线程编程的基本概念和优势

在正式学习 Java 的并发编程之前,还有几个并发编程的基础概念我们需要熟悉和学习。思考:上面例子中为什么多线程对共享变量的操作存在可见性问题?

2023-07-01 16:00:01 124

原创 idea下载安装

点击 DownLoad,进入下载页面进入下载页面后,选择自己想下载对应系统版本的idea,我下载的是windows64,版本为 2023.1.3。

2023-07-01 13:35:24 876

原创 12、Redis HyperLogLog与事务、Redis 7.0前瞻

Redis HyperLogLog与事务、Redis 7.0前瞻

2023-06-22 09:23:40 74

原创 11、Redis队列Stream、Redis多线程详解

Redis队列Stream、Redis多线程详解

2023-06-22 09:23:11 93

原创 9、Redis缓存设计与性能优化最佳实践

Redis缓存设计与性能优化最佳实践

2023-06-22 09:21:56 74

原创 8、分布式锁

2、redission分布式锁原理

2023-06-22 09:21:17 78

原创 10、Redis 6 新特性详

Redis 6 新特性详

2023-06-22 09:20:41 65

原创 13、springBoot + mysql + redis + redission + ddd四层架构 项目实战

缓存实战:redis 缓存用户需要解决的问题: 1》、使用Redis作为分布式缓存层,减轻后端数据库的负载。 2》、使用Redis的缓存穿透(布隆过滤器):使用Redis的布隆过滤器数据结构,高效地判断元素是否存在于大规模数据集中。优化布隆过滤器的参数设置,如预期插入数量和误判率,以达到合理的性能和空间占用 3》、缓存击穿(冷热分离、随机过期时间、热数据重建并发、分布式锁) 4》、缓存雪崩 (高并发、高可用) 5》、缓存、mysql 双写不一致 :不推荐延时双删,因为性能影响太大,推

2023-06-22 09:17:43 917

原创 7、Redis Cluster集群运维与核心原理

Redis Cluster是Redis提供的一种分布式数据存储解决方案,旨在实现数据的水平分片和高可用性。它通过将数据分布在多个节点上,实现数据的分布式存储和负载均衡。

2023-06-22 00:03:20 156

原创 6、Redis哨兵高可用架构

Redis哨兵高可用架构是一种用于保障Redis服务高可用性的容错解决方案。它通过引入一组哨兵节点来监控Redis主节点和从节点的状态,并在主节点故障时自动进行故障转移。

2023-06-21 21:59:46 144

原创 5、Redis主从架构

Redis主从架构是一种常用的数据复制方案,旨在提供高可用性和扩展性。在主从架构中,一个节点(主节点)负责写入和读取数据,而其他节点(从节点)复制主节点的数据。通过使用Redis主从架构,可以构建具有高可用性和扩展性的系统。无论是在关键应用中保障数据的可靠性,还是为了应对高并发读取需求,Redis主从架构为用户提供了一种可靠的数据复制解决方案。

2023-06-21 21:34:11 268

原创 4、Redis持久化和备份

通过持久化和备份机制,Redis确保数据在服务器重启、断电或灾难恢复时的安全性。这使Redis成为关键应用和系统的首选解决方案,提供可靠、持久的数据存储和保护。无论是简单的数据存储还是大规模系统,Redis的持久化和备份功能都为用户提供了安心使用的保障。

2023-06-20 23:40:42 113

原创 3、Redis数据结构和基本操作

在本篇文章中,我们将深入探索Redis的主要数据结构,包括字符串、哈希、列表、集合和有序集合,并学习如何使用它们进行基本的数据操作。您将了解每种数据结构的特点、适用场景以及常见的操作方法。通过实际示例和代码演示,我们将引导您掌握Redis中字符串的读写、哈希的存取、列表的插入和删除、集合的交并补操作以及有序集合的排序和范围查询。Redis提供了多种数据结构,适用于不同的数据存储和操作需求

2023-06-20 22:59:13 118

原创 2、Redis的单线程和高性能

Redis以其单线程和高性能的特点而闻名。采用单线程的事件驱动模型,Redis通过避免多线程的锁竞争和上下文切换开销来提高系统性能。尽管是单线程的,但Redis能够通过非阻塞的I/O多路复用机制处理大量并发连接,快速响应客户端请求。通过内存存储、高效的数据结构和异步操作等优化,Redis成为处理高并发负载和实时数据需求的理想选择。作为缓存、实时统计、消息队列和会话管理等领域的关键组件,Redis的单线程高性能为应用程序提供了灵活、高效的数据存储和处理能力。

2023-06-19 23:07:11 151

原创 1、Redis简介和安装

了解Redis的基本概念和用途,并学习如何安装和配置Redis服务器

2023-06-17 22:53:54 83

原创 2021-03-11 idea 2018 Reimport 无效

idea 2018 在pom.xml 中添加依赖,但是项目中没有对应的jar?1、右键项目——》Maven——》 Reimport2、1 无效时,需要在idea 中对maven进行设置

2021-03-11 10:52:37 401

原创 2021-03-09 idea+springboot+eureka+feign+jsp项目

## idea2017+springboot+mysql + eureka + feign 项目实现 eureka-consumer 调用 eureka-privode ,返回user 信息一、搭建 eureka-server 服务注册器idea 创建springboot然后下一步,直到finish;创建好后的目录:pom.xml 中的依赖: <dependency> <groupId>org.springframework.cloud</group

2021-03-09 11:25:27 551 1

空空如也

空空如也

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

TA关注的人

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