- 博客(25)
- 资源 (4)
- 收藏
- 关注
原创 Redis缓存问题全面解析与解决方案
本文深入探讨Redis在缓存应用中面临的八大核心问题:数据一致性、缓存穿透、缓存击穿、缓存雪崩、热点Key、BigKey、脑裂问题以及多级缓存架构设计。通过详尽的原理分析、解决方案对比和实战案例,帮助开发者构建高可用、高性能的缓存系统。文章结合携程金融缓存方案等实际案例,提供可落地的技术实践。
2025-07-03 15:47:23
1134
原创 Redis分布式锁深度解析:从原理到实践
分布式锁是分布式系统中协调多节点操作的核心机制,本文通过原理剖析、代码实现和方案对比,全面解析Redis分布式锁的实现方案及生产环境中的最佳实践。
2025-06-29 18:23:16
1109
原创 Redis持久化机制深度解析:RDB与AOF全面指南
本文深入剖析Redis的持久化机制,全面讲解RDB和AOF两种持久化方式的原理、配置与应用场景。通过详细的操作步骤和原理分析,您将掌握如何配置Redis持久化策略,确保数据安全性与性能平衡。文章包含思维导图概览、命令实操演示、核心原理图解以及最佳实践总结。
2025-06-29 17:34:20
864
原创 Redis高级数据结构深度解析:BitMap、布隆过滤器、HyperLogLog与Geo应用实践
本文将深入探讨Redis的四种高级数据结构:BitMap、布隆过滤器、HyperLogLog和Geo。通过原理剖析、命令详解、应用场景分析和代码实践,全面解析这些数据结构如何解决大规模数据存储、高效去重统计、地理位置计算等核心问题。文章包含大量实战案例和性能对比,揭示Redis如何以12.5MB存储1亿用户数据,用15KB完成百万UV统计的技术奥秘。
2025-06-28 23:55:40
1132
原创 Redis核心知识详解:从全局命令到高级数据结构
掌握Redis的核心在于理解每种数据结构的特性和适用场景,避免在生产环境中使用危险命令(如KEYS),遵循键命名规范,并针对不同场景选择最优数据结构。通过合理设计,Redis可支撑每秒15万+的读写操作,成为高并发系统的核心组件。
2025-06-26 17:24:16
766
原创 Redis高级数据结构深度解析:BitMap、布隆过滤器、HyperLogLog与Geo
通过合理运用这些高级数据结构,Redis可轻松应对日均亿级请求的高并发场景,同时保持内存消耗可控。建议根据业务特性组合使用,例如:用布隆过滤器前置保护HyperLogLog的UV统计操作。
2025-06-25 11:18:01
540
原创 Redis核心命令与数据结构详解
本文基于Redis技术讲解内容整理,全面解析Redis全局命令、五大核心数据结构及使用场景,帮助读者构建完整的Redis知识体系。
2025-06-24 13:44:35
371
原创 Redis核心架构与实战指南
本文全面解析Redis的核心架构设计理念、应用场景及实战技巧,帮助开发者构建完整的Redis知识体系,掌握这一高性能NoSQL数据库的精髓。
2025-06-24 11:12:18
2157
原创 Redis知识体系全解析:从核心概念到实战应用
当掌握Redis的「应用场景+底层原理」联动关系时:定位问题速度↑50%数据结构设计失误率↓70%集群运维复杂度↓40%
2025-06-24 10:19:30
92
原创 一、linux 指令集(显示系统信息、关机操作)
显示系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cp
2015-11-22 15:35:08
595
原创 poj3278Catch That Cow 经典宽搜讲解
3278 Catch That CowDescriptionFarmer Johnhas been informed of the location of a fugitive cow and wants to catch herimmediately. He starts at a pointN (0 ≤N ≤ 100,000) on a numberline and the cow
2013-04-19 14:31:57
805
原创 二分图最大匹配
二分图的基本概念一个无向图G=,如果存在两个集合X、Y,使得X∪Y=V, X∩Y=Φ,并且每一条边e={x,y}有x∈X,y∈Y,则称G为一个二分图(bipartite graph)。常用来表示一个二分图。若对X中任一x及Y中任一y恰有一边e∈E,使e = {x, y}, 则称G为完全二分图(complete bipartite graph)。当|X| = m,|Y| = n时,完全二分图G记
2013-03-27 19:42:28
955
原创 poj2390
DescriptionFarmer John made a profit last year! He would like to invest it well but wonders how much money he will make. He knows the interest rate R (an integer between 0 and 20) that is compound
2012-12-11 20:28:23
557
原创 poj1477
#includeint main (){ int al,num,i,n,m=1; while(scanf("%d",&n)&&n){ int a[55],sum=0; for(i=0;i scanf("%d",&a[i]); sum+=a[i]; } al=sum/n
2012-11-29 20:42:38
497
原创 poj1887
#include#define max 32769//32767int main (){ int n=1; while (1){ int d_max=1; int num=0,max_s=1; int a[max];//存储数组 int b[max];//记录最长 scanf("%
2012-11-20 20:19:36
508
原创 poj1247
#includeint main(){ int a[31]; int n,tmp,tol; while(1){ int sum=0; scanf("%d",&n); if(n==0)break; for(int i=1;i scanf("%d",&a[i]); sum+=a[i];} if((sum%2!=0)){pr
2012-11-19 19:15:10
436
原创 poj 水题
1000 纯属适应题1003 做的时候花了很久,现在看好像也不难1004 适应题,求下平均就行1005 要读懂题就行1007 逆序数,discuss方法1046 全部暴搜一遍。。1118 照抄2606没看题。。WA。。RE全占了1207 貌似我的方法超级麻烦1247 读懂题目比较麻烦1248 暴力过的。。1250 一整个晚上整这一道题。
2012-11-13 20:35:02
471
原创 poj 1953 World Cup Noise
World Cup NoiseTime Limit: 1000MSMemory Limit: 30000KTotal Submissions: 13552Accepted: 6703DescriptionBackground"KO-RE-A, KO-RE-A" shout 54.000 happy football fan
2012-10-15 20:36:50
511
原创 队列的知识
使用queue之前,要先利用构造函数一个队列对象,才可以进行元素的入队,出队,取队首和队尾等操作;(1).queue() queue q; 或者 queueQ[10000]; (2).queue(const queue&) 复制构造函数 例如:用一行代码利用queue对象q1,创建一个以双向链表为底层容器的queue对象q2queue>q1;queue>q2(q1);(3)
2012-10-11 20:14:46
518
原创 BellmanFord算法 单源加权图最短路径问题
Dijkstra算法不能解决权值为负的情况。 Bellman-Ford算法能在更一般的情况下解决最短路径问题,即:允许权值为负。注意,最短路径问题实际上均不允许有负值回路(当然是从源点可达的),因为这时不存在最短路径。总会有更短的办法-多绕负边回路走几趟就是了。 首先介绍一下松弛技术(Relaxation)对每个顶点,都设置一个属性d[v], 用来描述从源点s到v的
2012-10-11 18:48:46
691
原创 poj1579
Function Run FunTime Limit: 1000MSMemory Limit: 10000KTotal Submissions: 12713Accepted: 6621DescriptionWe all love recursion! Don't we? Consider a three-p
2012-06-06 19:52:41
547
原创 树状数组
在一个数组中。若你需要频繁的计算一段区间内的和,你会怎么做?,最最简单的方法就是每次进行计算,但是这需要O(N)的时间复杂度,如这个需求非常的频繁,那么这个操作就会占用大量的CPU时间,进一步想一想,你有可能会想到使用空间换取时间的方法,把每一段区间的值一次记录下来,然后存储在内存中,将时间复杂度降低到O(1),的确,对于目前的这个需求来说,已经能够满足时间复杂度上的要求,尽管带来了线性空间复杂度
2012-05-29 19:13:29
519
原创 01背包代码(c++)
五个物品的重量:2,2,6,5,4每个物品的价值:6,3,5,4,6#includeint main (){ int C,n,j,i ; int x[20]; int v[20][20]; int w[6]= {0,2,2,6,5,4}; int a[6]= {0,6,3,5,4,6}; C=10; n=5;
2012-05-23 19:33:59
1921
原创 01背包问题的一维数组解法
核心思想:for i:=1 to N dofor j=V downto c[i] doif f[j-c[i]]+w[i]>f[j] thenf[j]=f[j-c[i]]+w[i];背包问题九讲-P01 0-1背包问题在讲背包问题的时候老师说这是一个老鸟中的老鸟总结的,很全面也很简洁易懂,在此把内容贴上来,供大家一起交流学习。感谢原作者!题目有N件物品和一个容量为
2012-05-23 19:30:25
8605
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅