- 博客(11)
- 收藏
- 关注
原创 两周极限备考 软考中级
终于等到你,还好我没放弃💻 中级软件设计师,拿下!每一行代码都是我努力的勋章,未来,继续在代码世界里披荆斩棘,用智慧敲开科技新大门🚪 #软件设计师中级 #编程之路 #代码人生。
2024-12-11 14:46:01
95
原创 分布式ID演进过程
对于单体应用来讲,使用数据库主键自增可以减少维护索引的开销。但是对于分布式项目分库分表的场景来说,这种方案显然失效,使用数据库自增主键会导致唯一索引重复,不符合技术需求。
2024-12-07 17:10:46
270
原创 分布式限流算法演进过程
谈起限流算法,记得之前做过一个限制用户获取手机验证码次数的需求,同一个手机号24小时最多只能获取20次手机验证码,防止接口被盗刷。当时使用当前时间(yyyy-MM-dd) + 当前用户唯一标识作为 key,使用setnx + incr实现,当value的值达到20,拒绝发送短信。时间思路和代码都比较简单,不在此赘述了。 这种方案有一个致命的缺陷,如果限制间隔10分钟用户只能请求5次,假设再1-10 分钟请求9次,10-11分钟请求9次,那么此用户在1-11分钟请求了18次,与需求相违背。不可取。
2024-12-02 22:22:24
239
1
原创 分布式锁方案演进过程
让我们回顾锁的概念,对于单体应用,我们通常使用sychronized 关键字或者 aqs下的可重入锁即可(我更愿意称之为jvm级别的锁)。当升级到微服务应用,同一个服务可能运行在不同实例,此时要进行并发访问控制,就需要一个中间件来实现各个组件的通信,常用的技术方案便是redis。
2024-12-02 11:03:53
369
原创 Redis深入
Redis 深入(编程不良人)入门概述 Redis: 分布式内存数据库!单进程处理客户端请求,对读写事件的响应通过linux epoll包装实现。 默认16个数据库 三高: 高并发,高可用,高可扩 三 V: Volume Variety Velocity(高拓展)Nosql数据库设计 vs 关系型数据库设计(RDBMS vs NoSQL) 关系型数据库和Not Only SQLRedis持久化Shapshot(快照,调用fork创建子进程,保存这一时刻的数据状态)
2021-07-30 11:14:28
202
原创 Redis
Redis基础知识铺垫Remote Dictionary Server 远程字典服务NoSQL(Not Only SQL)Redis能干什么?1.内存存储,持久化,持久化很重要(RDB, AOF)2.效率高,用于高速缓存3.发布订阅系统4.地图信息分析5.计时器,计数器(浏览量!)Redis单线程实现,为什么呢? 因为redis基于内存操作,技术瓶颈并不是cpu,而是取决于具体机器的内存和带宽情况!!! 如果用多线程cpu来回切换造成的资源消耗可能不必单线程少!Redis常见数
2021-07-13 22:41:56
130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人