摘要: 前言 如果我们想要使用传统意义上的 Spring 应用,那么需要配置大量的 xml 文件才可以启动,而且随着项目的越来越庞大,配置文件也会越来越繁琐,这在一定程度上也给开发者带来了困扰,于是 SpringBoot 就应运而生了。 什么是 SpringBoot 2012 年 10 月,一个叫 Mike 阅读全文
posted @ 2021-03-25 13:55 双子孤狼 阅读(1385) 评论(0) 推荐(0) 编辑
摘要: 前言 本文从 ConcurrentHashMap 常见的面试问题引入话题,并逐步揭开其设计原理,相信读完本文,对面试中的相关问题会有很大的帮助。 HashMap 在我们日常的开发中使用频率最高的一个工具类之一,然而使用 HashMap 最大的问题之一就是它是线程不安全的,如果我们想要线程安全应该怎么 阅读全文
posted @ 2021-03-08 20:59 双子孤狼 阅读(1404) 评论(1) 推荐(5) 编辑
摘要: 前言 当 Redis 用作缓存时,其目的就是为了减少数据库访问频率,降低数据库压力,但是假如我们某些数据并不存在于 Redis 当中,那么请求还是会直接到达数据库,而一旦在同一时间大量缓存失效或者一个不存在缓存的请求被恶意攻击访问,这些都会导致数据库压力骤增,这又该如何防止呢? 缓存雪崩 缓存雪崩指 阅读全文
posted @ 2021-02-26 11:13 双子孤狼 阅读(2511) 评论(2) 推荐(3) 编辑
摘要: 前言 事务是关系型数据库的特征之一,那么作为 Nosql 的代表 Redis 中有事务吗?如果有,那么 Redis 当中的事务又是否具备关系型数据库的 ACID 四大特性呢? Redis 有事务吗 这个答案可能会令很多人感到意外,Redis 当中是存在“事务”的。这里我把 Redis 的事务带了引号 阅读全文
posted @ 2021-02-23 11:28 双子孤狼 阅读(1948) 评论(0) 推荐(0) 编辑
摘要: 前言 HashMap 对每一个学习 Java 的人来说熟悉的不能再熟悉了,然而就是这么一个熟悉的东西,真正深入到源码层面却有许多值的学习和思考的地方,现在就让我们一起来探索一下 HashMap 的源码。 HashMap 源码分析 HashMap 基于哈希表,且实现了 Map 接口的一种 key-va 阅读全文
posted @ 2021-02-18 17:10 双子孤狼 阅读(642) 评论(0) 推荐(1) 编辑
摘要: 前言 作为一台服务器来说,内存并不是无限的,所以总会存在内存耗尽的情况,那么当 Redis 服务器的内存耗尽后,如果继续执行请求命令,Redis 会如何处理呢? 内存回收 使用Redis 服务时,很多情况下某些键值对只会在特定的时间内有效,为了防止这种类型的数据一直占有内存,我们可以给键值对设置有效 阅读全文
posted @ 2021-02-15 09:48 双子孤狼 阅读(2908) 评论(0) 推荐(4) 编辑
摘要: 前言 任何一个服务,如果仅仅是单机部署,那么性能总是有上限的,RabbitMQ 也不例外,当单台 RabbitMQ 服务处理消息的能力到达瓶颈时,可以通过集群来实现高可用和负载均衡。 RabbitMQ 集群知多少 通常情况下,在集群中我们把每一个服务称之为一个节点,在 RabbitMQ 集群中,节点 阅读全文
posted @ 2021-02-11 14:29 双子孤狼 阅读(5794) 评论(1) 推荐(1) 编辑
摘要: 前言 Redis 当中提供了许多重要的高级特性,比如发布与订阅,Lua 脚本等。Redis 当中也提供了自增的原子命令,但是假如我们需要同时执行好几个命令的同时又想让这些命令保持原子性,该怎么办呢?这时候就可以使用本文介绍的 Lua 脚本来实现。 发布与订阅 发布与订阅功能理论上来说可以直接通过一个 阅读全文
posted @ 2021-02-08 14:44 双子孤狼 阅读(2029) 评论(0) 推荐(2) 编辑
摘要: 前言 在 jdk 的 juc 工具包中,提供了一种延迟队列 DelayQueue。延迟队列用处非常广泛,比如我们最常见的场景就是在网购或者外卖平台中发起一个订单,如果不付款,一般 15 分钟后就会被关闭,这个直接用定时任务是不好实现的,因为每个用户下单的时间并不确定,所以这时候就需要用到延迟队列。 阅读全文
posted @ 2021-02-03 19:20 双子孤狼 阅读(2935) 评论(0) 推荐(3) 编辑
摘要: 前言 Redis 作为一款内存数据库,被广泛使用于缓存,分布式锁等场景,那么假如断电或者因其他因素导致 Reids 服务宕机,在重启之后数据会丢失吗? Redis 持久化机制 Redis 虽然是定义为一个内存数据库,但是其也支持数据的持久化,在 Redis 中提供了两种持久化机制:RDB 持久化和 阅读全文
posted @ 2021-01-30 10:08 双子孤狼 阅读(4089) 评论(0) 推荐(1) 编辑