后端

最强分布式锁工具:Redisson

一、Redisson概述 什么是Redisson? Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。 其中包括(BitSet, Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, B

你的灯亮着吗?

今天看了《你的灯亮着吗》,作者是美国的唐纳德.高斯和杰拉尔德.温伯格,这本书写于1982年,至今40年历史了。 本书主要讲了遇到问题时候,不要先思考该怎么解决问题,而是要先点亮自己的灯,避开陷阱,找到真正的问题所在,问问自己下面这些问题: 一.遇到问题阶段: 先定义问题——谁的问题?问题的类型是什么?问题的本质是什么? 二.解决问题阶段: 1.这个问题该由谁解决? 2.这个问题的来源是什么? 三.

说说对JMM内存模型的理解?为什么需要JMM?

本身随着CPU和内存的发展速度差异的问题,导致CPU的速度远快于内存,所以现在的CPU加⼊了⾼速缓存,⾼速缓存⼀般可以分为L1、L2、L3三级缓存。基于上⾯的例⼦我们知道了这导致了缓存⼀致性的问题,所以加⼊了缓存⼀致性协议,同时导致了内存可⻅性的问题,⽽编译器和CPU的重排序导致了原⼦性和有序性的问题,JMM内存模型正是对多线程操作下的⼀系列规范约束,因为不可能让陈雇员的代码去兼容所有的CPU,通

LeetCode - #127 单词接龙

前言 我们社区陆续会将顾毅(Netflix 增长黑客,《iOS 面试之道》作者,ACE 职业健身教练。)的 Swift 算法题题解整理为文字版以方便大家学习与阅读。 LeetCode 算法到目前我们已经更新到 125 期,我们会保持更新时间和进度(周一、周三、周五早上 9:00 发布),每期的内容不多,我们希望大家可以在上班路上阅读,长久积累会有很大提升。 不积跬步,无以至千里;不积小流,无以成江

100. 相同的树

1.题目 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 image.png 输入:p = [1,2,3], q = [1,2,3] 输出:true image.png 输入:p = [1,2], q = [1,null,2] 输出:false image.png 输

趣味数学:水池的裂缝在什么位置?

水池的裂缝在什么位置? 一个水池,顶部有一个进水管,底部有一个出水管。如果只打开进水管, 分钟可以把水池灌满;如果只打开出水管, 分钟可以把一池水放完。现在水池在中间的某个位置出现了一条与池底平行的裂缝,如果只打开进水管,需要 分钟才能放满一池水,而只打开出水管,只需要 分钟即可放完一池水。 请问:裂缝出现在离池底几分之几高度的地方? 【解析】 列方程解应用题,很关键的一点,就是要找到某个「

网络面试-0x03http 有哪些常见的请求头以及作用

一、是什么? 定义:http头字段【http header fields】,指的是在超文本传输协议(http)的请求和响应消息中的消息头部分; 它们定义了一个超文本传输协议事务中的操作参数 GET /home.html HTTP/1.1 Host: developer.mozilla.org User-Agent: Mozilla/5.0 (Macintosh; Intel Ma

如何保证RabbitMQ消息的顺序性?

保证RabbitMQ消息的顺序性是一个常见的需求,尤其是在处理需要严格顺序的消息时。然而,默认情况下,RabbitMQ不保证消息的全局顺序,因为消息可能会通过不同的路径(例如不同的网络连接或线程)到达队列,并且消费者也可能并发地处理这些消息。不过,通过一些策略和设计模式,可