- 博客(103)
- 收藏
- 关注
原创 架构师面试(二十六):系统拆分
从 Logic 中拆分出 Extlogic,解决运营活动影响核心业务逻辑的问题;从 Logic 中拆分出 SpamLogic、AdLogic、MarketingLogic、OrderLogic、TradeLogic 等,解决业务单元之间互相影响的问题;业务单元中台化,解决业务复用问题,助力前端业务发展。
2025-04-06 09:33:33
403
原创 架构师面试(二十五):分布式存储 Leader 设计
在分布式存储系统中,往往会有一个负责数据写入的【Leader】角色,这样设计的原因包括:避免多节点写入的数据冲突;避免多节点写入时副本同步的网络拥堵;单节点写入可以降低系统复杂度;单节点写入更容易实现顺序一致性等等。
2025-04-02 23:40:37
333
原创 架构师面试(二十四):RPC 与 MQ
如果没有 RPC,微服务系统中所有的服务节点全部通过 MQ 进行消息通讯,设想一下这样的架构存在什么问题呢?MQ 就变成了整个微服务系统中一个中心化的组件,当这个组件出现任何问题时,整个微服务系统就会面临瘫痪的风险。
2025-03-31 06:00:00
124
原创 架构师面试(二十二):TCP 协议
TCP 协议是如何做到【可靠】数据传输的?通过【序列号和确认号机制】和【校验和机制】,辅助手段是 【超时重传】【滑动窗口】【拥塞窗口】;既然 TCP 协议非常可靠,那为什么在应用层还需要 ACK 确认机制呢?TCP 传输数据是可靠的,但不能保证 TCP 缓冲区的数据一定能到应用层。
2025-03-28 00:11:08
590
原创 架构师面试(二十一):双边网络效应
作者制作了一个高质量非常吸引流量的短视频,该短视频会短时间内(一般3~7天)获得大量的“点赞”、“收藏”、“转发”、“评论”等,作者也会获得大量的用户关注(吸粉),在此激励下,作者会继续努力不断创作出更多高质量作品,更多的读者会继续被吸引
2025-03-25 06:00:00
407
原创 架构师面试(十九):IM 架构
IM 系统从架构模式上包括 【介绍人模式】和 【代理人模式】。介绍人模式也叫直连模式,消息收发不需要服务端的参与,即客户端之间直连的方式;代理人模式也叫中转模式,消息收发需要服务端进行中转。
2025-03-21 07:39:03
538
原创 架构师面试(十八):I/O 原理
【阻塞IO 和 非阻塞IO】描述的是 “应用程序” 调用 “系统内核”的操作方式,【同步IO 和 异步IO】描述的是 “应用程序”和“系统内核”的交互方式。
2025-03-19 13:01:31
481
原创 架构师面试(十七):总体架构
单体架构也可以在【技术】和【业务】双重驱动之下,同时进行水平和垂直拆分,直接演变成【微服务架构】;不管是水平拆分还是垂直拆分,拆分的目的都是一样的: 解耦。
2025-03-17 12:57:01
395
原创 架构师面试(十六):TCP Socket 编程
TCP Socket 编程问题:建立TCP连接、对 TCP 连接读写问题、多线程读写 TCP 连接问题、关闭 TCP 连接问题。
2025-03-15 06:00:00
333
原创 架构师面试(十五):熔断设计
【服务管控系统】是大脑,储存着用于决策的大量信息;【注册中心】是神经系统,用于传导大脑发出的指令;【服务】是功能器官,负责业务功能。
2025-03-14 20:42:01
320
原创 架构师面试(十二):优雅下线
服务节点接收到“重启”指令后,不再执行业务逻辑处理,直接对请求队列中的所有的请求生成“reboot”回复包,直接发送给对应的上游节点,
2025-03-08 06:00:00
306
原创 架构师面试(十一):消息收发
客户端X发消息给客户端Y,通常会经过三个阶段:生产消息阶段(客户端X发送消息到服务端,服务端经过一系列逻辑处理后发送回复包到客户端X),推送消息阶段(服务端经过一系列逻辑处理后推送消息到客户端Y),消息确认阶段(服务端等待客户端Y发送ACK数据包并进行逻辑处理)
2025-03-07 06:00:00
207
原创 架构师面试(九):缓存一致性
插入操作:只写数据库即可;查询操作:先查询 缓存,如果为空则查询 数据库,然后将查询到的数据写入缓存;删除操作:先删除数据库,再删除缓存;更新操作:先更新数据库,再删除缓存。
2025-03-01 11:48:51
485
原创 架构师面试(八):RPC
前端通常基于【短连接】访问后端;在后端集群中,服务之间通常基于【全双工通信的长连接】进行 RPC 调用;在服务对数据库或缓存进行访问时,会基于【半双工通信的长连接】进行 RPC 调用。
2025-02-27 06:00:00
321
原创 架构师面试(七):评论消息
信箱模型的定时拉取方案,实时性低,实现简单;电话模型的主动推送方案,实时性高,但实现复杂;BP机模型的通知回调和拉取方案,实时性高,实现也简单。
2025-02-25 06:00:00
247
原创 架构师面试(六):熔断和降级
商品列表服务调用广告服务有98%调用是超时的,如果继续调用,大概率仍得不到正常结果,熔断是最好的选择,否则容易导致大面积的服务雪崩。
2025-02-23 09:31:58
250
原创 架构师面试(四):服务治理模型
注册中心作为微服务系统架构的核心,能触达到所有的微服务实例,这为服务治理提供了基础,可以非常方便的下发指令到各个微服务实例;注册中心提供的是下发指令的通道,而非采集数据的通道。
2025-02-19 06:00:00
295
原创 架构师面试(三):订阅模型
信箱模型,即客户端定时对服务端进行轮询,实现简单,但实时性不高;电话模型,由服务端触发,客户端被动响应,消息实时性比较高,但是落地相对复杂很多;BP 机模型,包括三次交互,首先是服务端主动推送 “通知” 到客户端,然后触发客户端的 “信箱模型” 动作。
2025-02-17 22:53:27
423
原创 架构师面试(二):计算机编程基础
协程是轻量级的用户级线程;操作系统用于进程治理和为应用提供访问硬件的能力;epoll 是同步非阻塞IO模型,IOCP 是纯异步IO模型;TCP 网络编程需要注意粘包和分包问题。
2025-02-15 11:54:43
221
原创 架构技能 专题文章合集
架构技能文章系列合集,包括软件架构、需求分析、软件设计、软件分层、代码解耦、扩展性、订阅模型、互联网三高、服务治理、CAP等。
2025-02-11 06:00:00
219
原创 架构技能(十一):CAP(下)
作为分布式系统大部分时间里 CA 模型的常态,有哪些常见的实现方案? AP 模型通常使用什么技术方便恢复 CA 状态?
2025-02-07 06:00:00
877
原创 架构技能(十):CAP(上)
CAP 定理应用在怎样的场景中?如何从工程实践角度准确理解 CAP 定理中C、A、P?什么是 CA 模型、CP 模型、 AP 模型?
2025-02-05 06:00:00
1267
原创 架构技能(四):需求分析
关键需求决定了架构设计,什么是关键需求?如何识别关键需求?普适性的需求分析模型是怎样的?百万直播答题案例中的关键需求有哪些?
2025-01-27 06:00:00
1428
原创 架构技能(三):扩展性
软件开发的扩展性的核心是什么?冯诺依曼体系结构有怎样的扩展性?计算机的启动过程有怎样的扩展性?电商系统中各类状态转换需要怎样的扩展性解决方案?
2025-01-25 06:00:00
1212
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人