数据结构与算法

Redis核心数据结构与分布式锁实现详解

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[2435024119@qq.com] 📱个人微信:15279484656 &

百亿级数据 分库分表 后面怎么分页查询?

随着数据的日益增多,在架构上不得不分库分表,提高系统的读写速度,但是这种架构带来的问题也是很多,这篇文章就来讲一讲跨库/表分页查询的解决方案。 架构背景 笔者曾经做过大型的电商系统中的订单服务,在企业初期时业务量很少,单库单表基本扛得住,但是随着时间推移,数据量越来越多,订单服务在读写的性能上逐渐变差,架构组也尝试过各种优化方案,比如前面介绍过的:冷热分离、查询分离各种方案。虽说提升一些性能,但是

JPA 百万级数据量动态分页查询的优化

分页查询是业务中再常见不过的操作了,在数据量比较小,索引使用得当的情况下,一般的动态查询都没啥性能问题。然而当数据量比较达到百万,千万级,常规的分页查询一般都会出现性能问题。本文不会介绍什么分库分表,缓存之类的优化方案,这些东西在网上千篇一律,不值得在此处拿来讨论。本文将通过具体的案例来讲讲当数据量到达百万量级后,分页到底该怎么做,代码该怎么写。 前言 分页查询是业务中再常见不过的操作了,在数

mysql生成千万级数据

1.生成数据需要的工具 mysql version:8.0.25 mysql workbench 2.生成数据的步骤 1.创建表 2.创建存储过程 3.调用存储过程 3.具体步骤 3.1创建表 create table data_test( id int not null auto_increment primary key comment '主键', c1 varcha

273. 【运维】小回顾

今天早上和大领导沟通完接下来的解决方案之后,顺利解决了客户那边由于服务器断电造成的软件故障,所幸昨天我的失误没有造成生产事故。 今天其实还有一次删除的工作要实施,这次谨记昨天的教训,反复验证完待删除文件已备份之后,才开始进行删除任务。总今往后,删除文件一定要慎之又慎,尤其是生产环境。 在今天实施解决方案的过程中其实还出现了个小插曲,我完成所有步骤之后,重启数据库,发现数据库启动成功了,但客户那边原

【优选算法 | 二分查找】二分查找算法解析:如何通过二段性优化搜索效率

算法 相关知识点 可以通过点击 以下链接进行学习 一起加油! 双指针 滑动窗口 在本篇文章中,我们将深入解析二分查找算法的核心原理。从基本概念到实际应用,带你了解如何利用二分查找高效定位元素,提升搜索效率。无论你是刚接触算法的新手,还是想优化代码性能的老手,二分查找都是你不可忽视的强大工具&#

领略算法真谛:单源最短路问题

嘿,各位技术潮人!好久不见甚是想念。生活就像一场奇妙冒险,而编程就是那把超酷的万能钥匙。此刻,阳光洒在键盘上,灵感在指尖跳跃,让我们抛开一切束缚,给平淡日子加点料,注入满满的passion。准备好和我一起冲进代码的奇幻宇宙了吗?Let's go!

456.【开发工具】解决 Goland 报错:Found several packages [main, xxx] in ...

前两天为了在 Go 语言中使用 oracle 的数据库驱动,安装了个 _ "github.com/godror/godror"包,结果 Goland 就一直报错(红色下划线),作为一个强迫症开发者,是受不了程序里报错的(毕竟程序警告都不想容忍)。报错如下: 报错信息: Found several packages [main, time] in 'D:/v4_dev_env/go

【tcp】 TCP的连接重连&QUIC的连接迁移

TCP的连接重连之痛 一条 TCP 连接是由四元组标识的(源 IP,源端口,目的 IP,目的端口)。什么叫连接迁移呢?就是当其中任何一个元素发生变化时,这条连接依然维持着,能够保持业务逻辑不中断。当然这里面主要关注的是客户端的变化,因为客户端不可控并且网络环境经常发生变化,而服务端的 IP 和端口一般都是固定的。 比如大家使用手机在 WIFI 和 4G 移动网络切换时,客户端的 IP 肯定会发生变

解锁动态规划的奥秘:从零到精通的创新思维解析(10)

前言:        前几天,我写了一篇关于动态规划的文章,今天继续为大家带来一些动态规划相关的习题解析。本次分享的两道题依然围绕“股票”问题展开,不过相比之前的题目,难度有所提升。希望能为大家的学习提供帮助!1.买卖股票的最佳时机1.1.题目来源        本题目来源于力扣,下面小编给出它的链接