摘要: 乐观锁 Optimistic Locking 乐观锁的概念 乐观锁机制采取了更加宽松的加锁机制。乐观锁是相对悲观锁而言,也是为了避免数据库幻读、业务处理时间过长等原因引起数据处理错误的一种机制,但乐观锁不会刻意使用数据库本身的锁机制,而是依据数据本身来保证数据的正确性 CAS 乐观锁技术,当多个线程 阅读全文
posted @ 2020-07-31 12:07 SourceLife_Bx 阅读(1110) 评论(0) 推荐(0) 编辑
摘要: 单例模式 推荐 Java 常见面试题 什么是单例模式 ? 确保程序中一个类只能被实例化一次,实现这种功能就叫单例模式 单例模式的好处是什么 ? 方便控制对象 节省资源减少浪费 怎么实现单例模式 ? 构造私有化 调用静态方法返回实例 确保对象的实例只有一个 常见的单例模式有哪些 ? 饿汉式 把对象创建 阅读全文
posted @ 2020-07-30 09:38 SourceLife_Bx 阅读(370) 评论(0) 推荐(0) 编辑
摘要: Spring Security的简单使用 推荐 Java 常见面试题 简介 SSM 整合 Security 是比较麻烦的,虽然Security的功能比 Shiro 强大,相反却没有Shiro的使用量多 SpringBoot出现后简化了Spring系列的配置文件,因此SpringSecurity的使用 阅读全文
posted @ 2020-07-30 08:41 SourceLife_Bx 阅读(1614) 评论(1) 推荐(2) 编辑
摘要: RabbitMq高级特性之延迟队列 介绍 消息进入队列后不能立即被消费,到达指定时间后才可被消费 实现 结合以下两种即可达到延迟队列 RabbitMq高级特性之TTL过期时间 RabbitMq高级特性之DLX死信队列 延迟队列小结 延迟队列 指消息进入队列后,经过一定时间后,才能被消费者消费 Rab 阅读全文
posted @ 2020-07-25 18:09 SourceLife_Bx 阅读(312) 评论(0) 推荐(0) 编辑
摘要: RabbitMq高级特性之死信队列 又称 死信交换机 DLX 介绍 当消息成为 Dead message 后,会重新发送到另一个交换机,这个交换机就是 DLX(死信交换机) 消息成为死信的情况公有三种: 队列消息长度达到限制 消费者拒接消费消息 basicNack/basicReject,并且不把消 阅读全文
posted @ 2020-07-25 18:07 SourceLife_Bx 阅读(745) 评论(0) 推荐(0) 编辑
摘要: RabbitMq高级特性之TTL 存活时间/过期时间 介绍 RabbitMQ支持消息的过期时间, 在消息发送时可以进行指定 RabbitMQ支持队列的过期时间, 从消息入队列开始计算, 只要超过了队列的超时时间配置, 那么消息会自动清除 每条消息设置过期时间 整个 Queue 队列设置过期时间 前提 阅读全文
posted @ 2020-07-25 18:06 SourceLife_Bx 阅读(797) 评论(0) 推荐(0) 编辑
摘要: RabbitMq高级特性之消费端限流 介绍 消息队列中囤积了大量的消息, 或者某些时刻生产的消息远远大于消费者处理能力的时候, 这个时候如果消费者一次取出大量的消息, 但是客户端又无法处理, 就会出现问题, 甚至可能导致服务崩溃, 所以需要对消费端进行限流 代码展示 一丶首先部署SpringBoot 阅读全文
posted @ 2020-07-25 18:04 SourceLife_Bx 阅读(630) 评论(0) 推荐(0) 编辑
摘要: RabbitMq保证消息可靠性之回退模式 介绍 生产者生产的消息没有正确的到达队列就会触发回退模式,进行二次发送 前提 完成 SpringBoot 整合 RabbitMq 中的Topic通配符模式 一、更改Producer工程的application.yml文件 spring: rabbitmq: 阅读全文
posted @ 2020-07-25 18:03 SourceLife_Bx 阅读(496) 评论(0) 推荐(0) 编辑
摘要: RabbitMq保证消息可靠性之确认模式 介绍 消息的确认,是指生产者投递消息后,如果 Broker 收到消息,则会给我们生产者一个应答。生产者进行接收应答,用来确定这条消息是否正常的发送到 Broker ,这种方式也是消息的可靠性投递的核心保障 前提 完成 SpringBoot 整合 Rabbit 阅读全文
posted @ 2020-07-25 18:01 SourceLife_Bx 阅读(335) 评论(0) 推荐(0) 编辑
摘要: SpringBoot结合RabbitMq SpringBoot 框架部署 HelloWorld 简单模式 Topic 通配符模式 一、SpringBoot 框架部署 1.创建Maven工程(我用的IDEA) File[文件] -> New[新建] -> Project[工程] -> Maven[选择 阅读全文
posted @ 2020-07-25 15:02 SourceLife_Bx 阅读(1709) 评论(2) 推荐(0) 编辑