朋友圈点赞功能如何实现?
日期:2026-07-11 标签:#面试 #八股 #后端 #系统设计 #点赞 #场景题 一句话答案 以动态和用户建立唯一点赞关系,点赞/取消做幂等状态转换,计数异步聚合;展示时还要按好友可见性过滤并批量查询点赞用户。 面试口语版 关系表使用 postId + userId 唯一键,点赞是插入或把状态改为有效,取消…
阅读全文文章归档
关于前端、工程与日常思考的记录。找到一个主题,开始阅读。
日期:2026-07-11 标签:#面试 #八股 #后端 #系统设计 #点赞 #场景题 一句话答案 以动态和用户建立唯一点赞关系,点赞/取消做幂等状态转换,计数异步聚合;展示时还要按好友可见性过滤并批量查询点赞用户。 面试口语版 关系表使用 postId + userId 唯一键,点赞是插入或把状态改为有效,取消…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #系统设计 #订单 #场景题 一句话答案 以订单 expiretime 和状态机为事实,使用延迟消息或时间轮及时触发取消,数据库分片扫描兜底;取消、支付和库存回补都通过条件更新与业务流水保证幂等。 面试口语版 创建待支付订单时写入过期时间,并发送一条延迟消…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #微服务 #服务发现 #场景题 一句话答案 服务实例启动后向注册中心登记地址并通过心跳/租约维持存活,调用方或代理监听实例列表、健康状态和版本,再通过负载均衡选择目标实例。 面试口语版 服务发现分客户端发现和服务端发现。客户端发现中,实例向 Nacos/C…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #第三方接口 #场景题 一句话答案 第三方调用必须假设它会慢、会错、会重复、会限流和会返回未知状态,通过超时、有限重试、幂等、熔断、隔离、验签、监控与对账保护自己。 面试口语版 接入前先明确 SLA、限额、鉴权、幂等语义、错误码和数据合规。客户端分别设置连…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #Redis #高可用 #场景题 一句话答案 Redis 故障时先通过主从/集群切换恢复,并用本地缓存、限流、熔断和降级保护数据库;是否允许绕过 Redis 取决于缓存数据是否可重建和业务风险。 面试口语版 架构上先保证 Redis Sentinel/Cl…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #MySQL #数据库 #场景题 一句话答案 先优化访问模式而非只看行数:收敛查询、建立合适索引、冷热归档、分区、读写分离和缓存,并通过容量指标判断何时必须拆分。 面试口语版 大表不等于必然慢,关键看工作集、索引高度、扫描量和写入模式。先用慢日志和执行计划…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #JVM #场景题 一句话答案 重点排查直接内存、线程栈、元空间、Code Cache、JNI/native 分配、mmap 和文件页缓存,并先区分进程 RSS、容器 working set 与 Java 堆指标。 面试口语版 堆稳定但进程 RSS 增长说…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #Redis #缓存 #场景题 一句话答案 不能静态“保证”热点不变化,应采用 Cache Aside 按访问加载,并通过有界内存与 LFU/LRU 淘汰让热点自然保留,再结合热点统计和主动预热提升命中率。 面试口语版 我会让 MySQL 做事实源,Red…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #系统设计 #购物车 #场景题 一句话答案 购物车保存用户购买意图而非商品事实,按用户分片存储 SKU、数量和选中状态,展示时实时或批量获取最新价格、库存与促销,下单时再次校验。 面试口语版 核心接口包括加商品、改数量、删除、勾选、列表和结算预览。登录用户…
阅读全文日期:2026-07-11 标签:#面试 #八股 #系统设计 #点赞 #场景题 一句话答案 点赞系统要同时维护用户与对象的唯一关系和可快速读取的计数,高并发写入可先落 Redis/日志再异步汇总,数据库唯一约束保证最终正确。 面试口语版 核心接口是点赞、取消、查询是否点赞和查询点赞数。关系表以 targetTyp…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #分布式锁 #场景题 一句话答案 锁确实会串行化同一冲突域,但正确设计应只锁必须互斥的最小资源;不同业务 Key 仍可并行,并可通过原子操作、分片和乐观并发减少锁使用。 面试口语版 分布式锁的目的不是提升吞吐,而是在共享资源无法通过数据库约束或原子状态机解…
阅读全文日期:2026-07-11 标签:#面试 #八股 #后端 #定时任务 #消息通知 #场景题 一句话答案 对过期时间建立索引,按固定时间窗口和主键游标分批扫描“7 天后到期”会员,生成唯一提醒任务并异步发送,延迟队列可做实时调度,定时扫描负责兜底。 面试口语版 500 万并不需要每天全表扫描。会员表对 expire…
阅读全文试试其他关键词,或重置筛选条件。