百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程
文科生都能看明白的数据结构——图解跳跃表(SkipList)

为什么选择跳跃表目前经常使用的平衡数据结构有:B树,红黑树,AVL树,SplayTree,Treep等。想象一下,给你一张草稿纸,一只笔,一个编辑器,你能立即实现一颗红黑树,或者AVL树出来吗?...

HyperLogLog原理及Redis实现分析

在某次需求实现时,面临的业务场景是对千万级的用户id做去重。Set、HashMap等常用的数据结构都能处理这种情况,但是这些数据结构也面临这样的问题:随着数据量的增多,占用的内存空间会越来越大。出于对...

面试挂了,批量执行Redis命令的方式有哪些,谁能回答?

1.引言1.1创作初衷最近参加面试的时候,被问到一个关于Redis的问题:批量执行Redis命令的方式有哪些?突然被问到这个问题,我先是有点懵逼。最容易想到的是Redis的一些批量命令,例如MGE...

现代软件开发流程(12-factors)

简介如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或软件即服务(SaaS)。12-Factor为构建如下的SaaS应用提供了方法论:使用标准化流程自动配置,从而使新的开发者花费最少...

互联网存储和检索是核心,通过 5 点来看看 skiplist

01、什么是skiplist跳表跳表是一种特殊的链表,特殊的点在于其可以进行二分查找。普通的链表要查找元素只能挨个遍历链表中的所有元素,而跳表则利用了空间换时间的策略,在原来有序链表的基础上面增加了多...

面试官:Redis的过期策略到底是怎么实现的?

我们在setkey的时候,可以给它设置一个过期时间,比如expirekey60。指定这key60s后过期,60s后,Redis是如何处理的呢?本文将详细分析一下。一、Redis过...

延时队列我在项目里是怎么实现的?

我是3y,一年CRUD经验用十年的markdown程序员?常年被誉为职业八股文选手前阵子,有个小伙伴找到问我,如果要实现延时发送,那是基于什么来做的。我看到这个问题之后,稍微思考了下,觉得确实也是au...

合理的timeout设置,让系统的SLA大幅提升

为什么会有timeout百度了一下timeout的字面意思,就是简单的“超时”,那么timeout为什么跟我们编程息息相关,我没有找到timeout的最初的出处,但是我自己想了一下,这个应该是跟tcp...

高并发扣减库存方案(秒杀扣减库存)

背景我们在做电商的时候,经常遇到下单之后需要扣减库存的业务,那这个业务我们怎么来实现呢?传统的做法是:用户下单,执行下单服务;同时,扣减库存;如果是并发较高的场景,为了保证可用和性能,那么采用二阶段事...

电商库存系统的防超卖和高并发扣减方案

电商库存系统的防超卖和高并发扣减方案摘要:如果你要开发一个电商库存系统,最担心的是什么?闭上眼睛想下,当然是高并发和防超卖了!本文给出一个统筹考虑如何高并发和防超卖数据准确性的方案。读者可以直接借鉴本...