后端

Redis新版本引入多线程,有哪些利弊?

Redis作为一个基于内存的缓存系统,一直以高性能著称,因没有上下文切换以及无锁操作,即使在单线程处理情况下,读速度仍可达到11万次/s,写速度达到8.1万次/s。但是,单线程的设计也给Redis带来一些问题: 只能使用CPU一个核; 如果删除的键过大(比如Set类型中有上百万个对象),会导致服务端阻塞好几秒; QPS难再提高。 针对上面问题,Redis在4.0版本以及6.0版本分别引入了La

2023-04-18 - 草稿

import java.util.Scanner; public class Main {     public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);         int score = scanner.nextInt();                 St

03.python算法基础知识理解

程序 = 数据结构+算法 一个程序,有多种解决实际问题的解法,就涉及到算法;听说多训练算法思维,测试过程基本也不会漏测,赶紧多训练下; 本篇主要理解下算法解题中涉及到的几种概念,时间复杂度+空间复杂度 1、时间复杂度:用来评估算法运行效率的式子 image.png 小结: 1、算法要考虑时间复杂度。时间复杂度是用来估计算法运行时间的一个式

HashMap扩容机制

介绍一下几个名词: 容量:capacity ,默认16。 加载因子:loadFactor,默认是0.75 阈值:threshold,默认12。threshold=capacitytloadFactor;当元素个数超过阈值时,就会触发扩容。 什么时候需要扩容: HashMap数组中元素个数超过阈值,即触发扩容。 例如:默认情况下,容量16,加载因子0.75,阈值12,当HashMap中的元素个数超

Spring Boot 集成 Quartz 实现定时任务(Cron 表达式示例)

Spring Boot 集成 Quartz 实现定时任务(Cron 表达式示例) 前言 1. 添加 Quartz 依赖 2. 创建 Quartz 任务 3. 配置 Quartz 任务调度 4. 启动 Spring Boot 观察定时任务执行 5. Quartz Cron 表达式详解 6. 结论 前言在 Spring Boot 项目中&

LeetCode #1345 Jump Game IV 跳跃游戏 IV

1345 Jump Game IV 跳跃游戏 IV Description: Given an array of integers arr, you are initially positioned at the first index of the array. In one step you can jump from index i to index: i + 1 where: i + 1

02-架构师的视图和视角

1. 架构师的视图 image.png 1.1 上下文视图 1.1.1 概念 上下文视图总结我们所设计的架构背后究竟是怎么样的一个系统,包括系统本身、外部实体和相关接口。 1.1.2 示例 image.png 1.2 功能视图 1.2.1概述 描述系统运行时功能元素及其职责、接口和交互关系。 功能视图和上下文视图有一定的重合之处,但功能视图脱离环境,描述的是系统组件定义及

金字塔工作原理

金字塔理论本身是一种逻辑思维方式,因而它也可以被应用于归纳和总结问题上面,而对于问题的归纳和总结,又尤以金字塔原理的核心部分——SCQA分析最为关键。 SCQA是搭建问题解决方案的整体框架,其中的S是英文Scene的缩写,意思是情景或场景。在分析问题时,需要分析者将问题带入大家比较熟悉的场景之中,以便于对照理解。 C是英文Conflict的缩写,意思是冲突。在情景之中,要表现出来一个或多个矛盾和冲

树与二叉树

树与二叉树的特性: (1)树的概念: 双亲、孩子和兄弟:结点的子树的根称为该结点的孩子;相应地,该结点称为其子结点的双亲。具有相同双亲的结点互为兄弟 结点的度:一个结点的子树的个数记为该结点的度 叶子节点:也称为终端结点,指度为0的结点 内部结点:指度不为0的结点称为分支节点或非终端节点。除根结点之外,分支结点也称为内部结点 结点的层次:根为第一层,根的孩子为第二层,依次类推,若某节点在第i层,则

532. 数组中的 k-diff 数对

给你一个整数数组 nums 和一个整数 k,请你在数组中找出 不同的 k-diff 数对,并返回不同的 k-diff 数对 的数目。 k-diff 数对定义为一个整数对 (nums[i], nums[j]) ,并满足下述全部条件: 0 <= i, j < nums.length i != j nums[i] - nums[j] == k 注意,|val| 表示 val 的绝对值。 示例