分布式
文章平均质量分 89
主要包含分布式缓存、分布式理论、分布式锁、分布式事务、分布式存储、分布式注册中心、分布式配置中心、分布式定时任务、分布式幂等技术干货
首席架构师专栏
本人担任大厂架构师,具有多年的架构经验,专注于研究高并发,高性能,高可用的架构设计解决方案,把自己从小白晋升架构师的技术和经验分享给大家,教大家如何成为合格的架构师!
展开
-
如何给老婆解释什么是微服务
本文用通俗易懂的语言解释什么是微服务原创 2022-08-01 20:09:32 · 81 阅读 · 0 评论 -
SpringCloud 优雅下线+灰度发布
本文通过介绍springcloud的优雅下线+灰度发布的方法,相信对工作中起到一定的价值。原创 2022-06-29 20:17:44 · 790 阅读 · 0 评论 -
面试官问:MySQL的自增 ID 用完了,怎么办?
如果你用过或了解过MySQL,那你一定知道自增主键了。每个自增id都是定义了初始值,然后按照指定步长增长(默认步长是1)。虽然,自然数是没有上限的,但是我们在设计表结构的时候,通常都会指定字段长度,那么,这时候id就有上限了。既然有上限,就总有被用完的时候,如果id用完了,怎么办呢?...原创 2022-06-12 21:39:47 · 329 阅读 · 0 评论 -
Redis 16 大应用场景
使用场景在程序猿眼里可能就觉得redis主要作为缓存使用,对redis的其它功能知之甚少,为了让大家更多的了解redis,沐子总结了它的16大应用场景:缓存、2. 数据共享分布式、3. 分布式锁、4. 全局ID、5. 计数器、6. 限流、7. 位统计、8. 购物车、9. 用户消息时间线timeline、10. 消息队列、11. 抽奖、12. 点赞、签到、打卡、13. 商品标签、14. 商品筛选、15. 用户关注、推荐模型、16. 排行榜1、缓存String类型例如:热点数据缓存(例如报表、明星原创 2022-03-20 21:36:03 · 2073 阅读 · 0 评论 -
参考后端API接口设计
在移动互联网,分布式、微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式,更需要设计更规范、更便捷的后端API,本文主要介绍怎么设计优雅的API。原创 2022-03-06 20:36:35 · 1119 阅读 · 0 评论 -
缓存穿透、缓存击穿、缓存雪崩问题的常见解决方案
以前我一个QPS不到100的项目,天天问我缓存穿透、缓存击穿、缓存雪崩,我是真滴难。这种感受,但是只要是面试要问的题目,就算用不上,我们也要去学习和了解,谁叫我们穷了。最近在互联网公司工作的这几年中,由于公司经常搞一些活动,在活动期发现会有大量请求直接落到数据库,导致数据库资源占满,偶尔引起数据库故障。经过线上故障的事情后,我们通过分析日志发现,大量的请求从Redis中查询不到数据,转而把请求落到数据库中,主要是缓存失效引起的问题。为了后续大家能够迅速解决这类问题,或者在面试中能够从容面对缓存失效的问题,原创 2021-11-30 14:24:58 · 100 阅读 · 0 评论 -
理解这篇分布式事务文章,可以做到吊打面试官
大家好,我是沐子。不知道你是否遇到过这样的情况,去小卖铺买东西,付了钱,但是店主因为处理了一些其他事,居然忘记你付了钱,又叫你重新付。又或者在网上购物明明已经扣款,但是却告诉我没有发生交易。这一系列情况都是因为没有事务导致的,这说明了事务在生活中的一些重要性。我们无论在工作或者在面试中,都会碰到分布式事务相关问题。近几年我在面试开发工程师们,都发现大都存在一个共同的问题,对分布式事务一知半解,且也仅仅停留在初级的使用层面,基于上述情况,小篇给你彻底讲清楚分布式事务,在面试时争取可以吊打面试官。![在这里原创 2021-11-18 15:08:04 · 435 阅读 · 0 评论 -
沐子带你深入理解一致性Hash算法
近年来B2C、O2O等商业概念的提出和移动端的发展,使得分布式系统流行了起来。分布式系统相对于单系统,解决了流量大、系统高可用和高容错等问题。功能强大也意味着实现起来需要更多技术的支持。例如系统访问层的负载均衡,缓存层的多实例主从复制备份,数据层的分库分表等。我们以负载均衡为例,常见的负载均衡方法有很多,但是它们的优缺点也都很明显:随机访问策略。系统随机访问,缺点:可能造成服务器负载压力不均衡,俗话讲就是撑的撑死,饿的饿死。轮询策略。请求均匀分配,如果服务器有性能差异,则无法实现性能好的服务器能够多承担原创 2021-11-12 10:23:20 · 568 阅读 · 0 评论 -
信不信,90%程序猿都不会正确使用分布式锁
大家好,我是 沐子。分布式锁的话题,很多文章已经写烂了,我为什么还要写这篇文章呢?因为我发现网上 90% 的文章,并没有把这个问题真正讲清楚。导致很多读者看了很多文章,依旧云里雾里。例如下面这些问题,你能清晰地回答上来吗?数据库通过乐观锁怎么实现分布式锁?基于 Redis 如何实现一个分布式锁?Redis 如何避免死锁?Redis 如何合理的设置超时时间?Zookeeper如何规避羊群效应?三种分布式锁的优缺点分别是什么?这篇文章,我就来把这些问题彻底讲清楚。读完这篇文章,你不仅可以彻原创 2021-11-03 11:34:36 · 5657 阅读 · 2 评论 -
腾讯三面:哨兵挂了,Redis还能正常工作吗?
上次跟学弟学妹们聊完了mysql相关的一些知识点,学弟学妹们还是挺开心的,但是上次有学弟在跟我留言,在腾讯三面的时候被面试官问了个一脸蒙逼急的问题:哨兵挂了,Redis还能正常工作吗?为了对的起学弟学妹们的信赖这次跟大家具体聊聊Redis的哨兵模式。redis哨兵都干了什么redis哨兵是一个运行的特殊的redis进程,他主要有三个使命:监控选主通知监控的是什么哨兵主要是监听主库和从库是否存活,怎么进行监控?哨兵会定期的给从库发送PING命令,如果从库没有在设定的时间内回复哨兵,那么就会原创 2021-10-14 16:21:04 · 132 阅读 · 0 评论 -
mysql锁(面试必备),值得收藏!
因为现在还处在疫情期间,找工作也不是那么容易, 最近有粉丝和我聊到他找工作面试时被问到Mysql的锁机制就比较懵了,因为平时没有关注Mysql的锁机制,当被问到高并发场景下锁机制是怎么保证数据的一致性的和事务隔离性时,他一脸茫然。的确Mysql的锁机制确实非常重要且相对有些难理解,所以在这里做一个全面的总结整理,便于以后的查阅,也分享给各位读者大大们。Mysql中锁的分类按照不同类型的划分可以分成不同的锁,按照「锁的粒度」划分可以分成:表锁、页锁、行锁;按照思想的划分:「乐观锁」和「悲观锁」。下面我们对原创 2021-10-12 22:25:59 · 230 阅读 · 0 评论 -
数据库高可用架构设计,看这篇就够了!
你好,我是沐子。又赶上一年一度的金九银十的日子,这段期间的招聘岗位相对前几个月会多些,如果在目前公司没有进步、没有前途时,这段时间可以准备一下,去外面看看机会。不过在外面找工作时,可以提前在网上看看招聘信息,看看自己是否达到公司要求。如果多看下高薪资的技术人员招聘要求时,就会发现对三高都有一定的要求,比如下面一家公司的要求就对高并发、高负载和高可用性系统设计要有开发经验。现实是我们大部分的公司都很少会遇到三高的场景,即很少有这方面的设计开发经验,不过我们可以提前学习三高的方案,尽量把这些方案用在工作上原创 2021-10-12 14:55:45 · 696 阅读 · 1 评论