-
图解 | 深入理解跳表及其在Redis中的应用
本文转载自微信公众号「后端技术指南针」,作者大白斯基。转载本文请联系后端技术指南针公众号。 跳跃链表及其应用是非常热门的问题,深入了解其中奥秘大有裨益,不吹了,快开始品尝这美味的知识吧! 跳跃链表的基本概念 初识跳表 跳跃列表是一种数据结构。它允许快速查询一个有序连续元素的数据链表。跳跃列表的平均查找和插入时间复杂度都是O(log n),优于普通队列的O(···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
Redisson 分布式锁源码之公平锁加锁
前言 默认的加锁逻辑是非公平的。 在加锁失败时,线程会进入 while 循环,一直尝试获得锁,这时候是多线程进行竞争。就是说谁抢到就是谁的。 Redisson 提供了公平锁机制,使用方式如下: RLockfairLock=redisson.getFairLock("anyLock");//最常见的使用方法fairLock.lock(); 下面一起看下公平锁···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
从0开始:500行代码实现 LSM 数据库
前言 LSM-Tree 是很多 NoSQL 数据库引擎的底层实现,例如 LevelDB,Hbase 等。本文基于《数据密集型应用系统设计》中对 LSM-Tree 数据库的设计思路,结合代码实现完整地阐述了一个迷你数据库,核心代码 500 行左右,通过理论结合实践来更好地理解数据库的原理。 一、SSTable(排序字符串表) 之前基于哈希索引实现了一个数据库···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
DigitalOcean 与 MongoDB 合作,推出全新的 DBaaS 产品
DigitalOcean 今天宣布将与 MongoDB 展开合作,推出 DigitalOcean Managed MongoDB,这是一个全新的管理型数据库即服务(DBaaS)产品。它将主要提供给应用程序开发人员和中小型企业。 管理型 MongoDB 可以帮助开发人员在 DigitalOcean 上轻松创建 MongoDB 集群。它还通过无缝管理、扩展和保···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
7 个超实用的 MySQL 语句写法,让同事们眼前一亮!
在写SQL时,经常灵活运用一些SQL语句编写的技巧,可以大大简化程序逻辑。减少程序与数据库的交互次数,有利于数据库高可用性,同时也能显得你的SQL很牛B,让同事们眼前一亮。 1.插入或替换 如果我们想插入一条新记录(INSERT),但如果记录已经存在,就先删除原记录,再插入新记录。 情景示例:这张表存的每个客户最近一次交易订单信息,要求保证单个用户数据不重···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
如何不改表结构动态扩展字段?
痛点 软件行业唯一不变的就是变化,比如功能上线之后,客户或 PM 需要对已有的功能增加一些合理的需求,完成这些工作必须通过添加字段解决,或者某些功能的实现需要通过增加字段来降低实现的复杂性等等。 这些问题都会改动线上的数据库表结构,一旦改动就会导致锁表,会使所有的写入操作一直等待,直到表锁关闭,特别是对于数据量大的热点表,添加一个字段可能会因为锁表时间过长···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
MySQL系列之执行SQL 语句时发生了什么?
前言 当我们用 navicat、mysql workbench 等mysql 的客户端执行一条sql语句后,我们就能得到相应的结果。例如: 那么这个过程发生了什么呢? 执行一条sql 就是一次Rpc的调用 mysql 是一个客户端、服务端的架构。我们平时使用的大部分程序app其实是由两部分组成的,一部分是客户端程序,一部分是服务器程序。 以我们常用的微信、···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
MySQL 开源工具集合
本文转载自微信公众号「数据和云」,作者崔虎龙。转载本文请联系数据和云公众号。 上次聊到MySQL官方运维工具。这次再了解下常用的开源工具。 目前已收集的并在实际环境中使用过的开源工具如下: 可以说掌握了这些工具(原理和使用技巧),MySQL的日常运维就更简单。 备注:介绍中图片部分是开源社区的,部分是自己按照思路画的,画图有助于理解。 在线DDL变更 pt···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
十多款Redis容器化技术选型对比,K8S并非万金油
张晋涛 云原生技术专家 负责DevOps的实践和落地,推进容器化技术落地和运维自动化等。 参与了众多知名开源项目,对Docker、Kubernetes及相关生态有大量生产实践和深入源码的研究。 今天将分享的内容分为以下4个方面: 一、缘起 二、介绍多样的容器化技术 三、Redis介绍 四、Redis容器化方案的对比 一、缘起 首先我们先聊一下为什么今天我会···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
面试官:如果 MySQL 引起 CPU 消耗过大,你会怎么优化?
谁在消耗cpu? 用户+系统+IO等待+软硬中断+空闲 祸首是谁? 1、用户 用户空间CPU消耗,各种逻辑运算 正在进行大量tps 函数/排序/类型转化/逻辑IO访问… 用户空间消耗大量cpu,产生的系统调用是什么?那些函数使用了cpu周期? 2、IO等待 等待IO请求的完成:此时CPU实际上空闲 如vmstat中的wa 很高。但IO等待增加,wa也不一定···
- 发布时间:2025-05-15
- 作者:益华网络
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])