面试
文章平均质量分 93
改专栏主要为一些常见的面试问题
Aerkui
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
缓存一致性
缓存一致性(Cache Consistency)当数据库中的数据发生变化时,如何保证缓存中的数据与数据库保持同步,避免读到“脏数据”或“过期数据”。缓存提升性能,但引入了数据不一致的风险。在高并发场景下,一个看似简单的“更新用户信息”操作,可能因缓存处理不当,导致用户看到旧头像长达数分钟!一致性级别方案适用场景强一致分布式锁 + 同步更新极少(性能差)最终一致90%+ 场景弱一致仅设置 TTL非核心数据🌟记住没有完美的强一致性缓存方案。在性能与一致性之间做权衡,才是工程的艺术。原创 2025-11-16 21:43:27 · 1285 阅读 · 0 评论 -
Go 语言内存管理面试精讲:从分配到回收,彻底掌握 runtime 内存机制
✅ 回答:“逃逸分析是编译期优化技术,判断对象生命周期是否超出当前栈帧。若未逃逸,分配在栈上(高效、无 GC);若逃逸,则分配在堆上。这减少了堆内存压力和 GC 频率。组件作用是否加锁mcacheP 级缓存,快速分配小对象❌ 无锁mcentral全局 mspan 池✅ 有锁mheap管理整个堆,分配大对象/span✅ 有锁决定栈 or 堆分配编译期🌟记住Go 的内存管理 = 分级缓存 + 无锁分配 + 精准 GC。理解它,你就能写出高性能、低延迟的 Go 服务。原创 2025-11-16 21:36:50 · 789 阅读 · 0 评论 -
如何保证接口的幂等性?
幂等性(Idempotency)对同一个接口发起一次或多次相同请求,其结果完全一致,不会产生副作用。查询用户信息(GET) → 天然幂等取消一个“待支付”订单 → 成功后再次取消仍返回“已取消”,不报错扣减余额 10 元 → 调用两次就扣 20 元创建订单接口无去重 → 生成两个订单在分布式系统中,由于网络超时、客户端重试、消息重复投递等原因,幂等性不是“可选项”,而是“必选项”。保证接口幂等性,本质是“去重 + 状态判断”。创建类操作→ 用业务唯一键;状态变更→ 用状态机;表单提交。原创 2025-11-16 21:20:18 · 1435 阅读 · 0 评论 -
HTTP 与 HTTPS 的核心区别及 TLS 握手详解
HTTPS = HTTP + TLS/SSL 加密通道HTTP 是明文的,HTTPS 是加密的;HTTPS 的核心是 TLS 协议;TLS 握手通过非对称加密安全协商出对称密钥;现代 Web 必须全站 HTTPS,这是安全基线。🔒 安全是底线,不是选项。从今天起,让你的每一个 API、每一个页面都跑在 HTTPS 上。原创 2025-11-16 21:13:57 · 760 阅读 · 0 评论 -
面试|Mysql|DELETE、DROP、TRUNCATE的区别
你的需求推荐命令删除某些符合条件的行DELETEWHERE快速清空整张表,重置自增列彻底删除表及其所有结构DROP TABLEDELETETRUNCATEDROP虽然都与“删除”有关,但它们的威力和影响范围完全不同。理解它们的区别,不仅能避免“删库跑路”的悲剧,还能让你的数据库操作更加高效和安全。DELETE是“手术刀”,精准切除。TRUNCATE是“清道夫”,快速清空。DROP是“爆破手”,彻底摧毁。合理使用,方能游刃有余。原创 2025-09-13 13:44:01 · 930 阅读 · 0 评论 -
面试|Python|函数传参是值传递还是引用传递?
Python函数传参的本质是“传递对象引用的副本”。如果对象是可变的,函数内对其内容的修改会反映到外部。如果对象是不可变的,任何“修改”都会创建新对象,不影响外部。重新赋值只会改变局部变量的指向,不会影响外部变量。Python的参数传递机制看似复杂,实则遵循其“一切皆对象”的简洁设计。理解“传递对象引用”这一核心概念,结合对象的可变性分析,就能从容应对各种传参场景。“都不是,它是传递对象引用。掌握这一点,你不仅解决了参数传递的疑惑,也向深入理解Python的内存模型迈出了重要一步。原创 2025-09-13 13:33:53 · 1229 阅读 · 0 评论
分享