相关分享
ThinkPad + Redis:构建亿级数据毫秒级查询的平民方案
如何用普通设备实现海量数据的毫秒级查询?文章分享了在 ThinkPad 上构建 Redis 系统的完整方案,详细解析了数据分片、查询优化和资源调配等关键技术,还提供了针对高效查询的实际案例。轻量化实现,高性能表现,为开发者提供了实用的参考思路,值得深入学习!
Redis高可用原理
Redis中为了实现高可用(High Availability,简称HA),采用了如下两个方式:
1、主从复制数据。
2、采用哨兵监控数据节点的运行情况,一旦主节点出现问题由从节点顶上继续进行服务。
浅谈Redis分布式锁(上)
不论面试还是实际工作中,Redis都是避无可避的技术点。在我心里,MySQL和Redis是衡量一个程序员是否“小有所成”的两把标尺。如果他能熟练使用MySQL和Redis,以小化大,充分利用现有资源出色地完成当下需求,说明他已经成长了。
本篇文章我们一起来探讨Redis分布式锁相关的内容。
说到锁,大家第一时间想到的应该是synchronized关键字或ReentrantLock,随即想到偏向锁、自旋锁、重量级锁或者CAS甚至AQS。一般来说,我不喜欢一下子引入这么多概念,可能会把问题弄复杂,但为了方便大家理解Redis分布式锁,这里稍微提一下。
Redis 核心数据结构(二)
在上一篇文章: Redis 核心数据结构(1) 中,介绍了链表、ziplist、quicklist 数据结构。这篇文章,来介绍一下 skiplist、dict。
skiplist 跳跃表是一种有序数据结构,支持平均 O(logN)、最坏 O(N) 复杂度的节点查找;大部分情况效率可以和平衡树相媲美,实现却比平衡树简单。
跳跃表就是 Redis 中有序集合键的底层实现之一。
Redis 核心数据结构(一)
Redis 目前是使用最广泛的缓存中间件。其突出特点就是支持多种常见的数据结构。对比 JDK 集合类的实现,Redis 的实现表现出很多独到之处,很多地方设计得别具匠心。下面就来简要介绍一下。
Linux QtFM 文件管理器的 3 个令人愉快的功能
QtFM 是一个简单的文件管理器,旨在通过一个快速直观的界面提供文件管理的基本功能。它适用于 Linux、BSD 和 macOS。
QtFM,顾名思义,使用 Qt(规范发音为 “cute”)编程工具包。我在 C++ 和 Python 中使用过 Qt 工具包,使用它总是一种乐趣。它是跨平台的,具有多个有用的抽象级别,因此开发人员不必直接与特定于供应商的 SDK 交互,而且它具有高度可配置性。从用户的角度来看,无论你使用的是最新的硬件还是旧计算机,这都是一种“自然”且快速的体验。
Redis故障整理-既是热key也是大key导致网卡PPS过高
之前我们遇到过热key,命中了集群中的一组服务器,导致其网卡PPS超出了极限值,经常性出现redis响应变慢的问题。
我们随即对机器和网卡进行了升级,升级成多队列网卡,设置了4个CPU和网卡队里一一对应。
升级完以后,Redis的整体平均响应时间确实变短了,但是仍然会存在一些响应慢的情况出现,经过分析多张监控图的现象,我们发现Redis的QPS一直很稳定。
Redis过期Key、内存回收的一些细节
Redis可以说是一个内存级数据库,受限于物理内存的大小,我们会限制Redis对内存的使用,这在Redis中主要体现在以下两个方面:
1、删除已经过期的Key;
2、内存使用达到maxmemory上限时触发内存溢出控制策略;
微信这个扰人的功能终于下线了
前不久,微信支付运营方财付通支付科技有线公司发出通知,为了保障用户权益,提升用户使用体验,我司将于2021年9月1日起下线支付后推荐关注公众号功能。
使用容器方式编译无功能限制的 Drone CI
因为默认版本的 Drone 包含构建次数限制,如果日常高频使用 Drone,不久之后,便会遇到需要“重新初始化”应用才能继续使用的问题,但其实,作为个人用户,我们其实可以不受此限制影响。所以本篇文章,就来分享下如何使用容器方式构建无使用限制的 Drone CI。
