2026年09月的文章 第42页

redis

Redis 的 AOF fsync 策略对性能和数据安全的影响

pren 发布于 2026-09-22

Redis 作为内存数据库,持久化机制一直是面试中的高频考点,而 AOF(Append Only File)的 fsync 策略更是核心追问点。很多候选人能背出 appendfsync 有三个取值,却说不清它们对性能和数据安全的实际影响,更无法在真实场景中做出合理选择。本文从底层...

阅读(19)评论(0)赞 (0)

redis

Redis 的 RDB fork 时为什么会产生内存膨胀

pren 发布于 2026-09-22

很多同学在面试中被问到 Redis 持久化时,都能答出 RDB 和 AOF 的区别,但一旦面试官追问:“RDB 在 fork 子进程时,为什么会导致内存膨胀?” 不少人就开始含糊了。有人说是因为写时复制(CopyOnWrite)本身就会复制内存,也有人说是 fork 本身会拷贝页...

阅读(18)评论(0)赞 (0)

linux

Linux 面试题:用户态与内核态切换为什么有开销,如何减少切换

pren 发布于 2026-09-22

在 Linux 系统编程与性能优化领域,“用户态与内核态切换”是一个绕不开的核心话题。无论是后端开发、运维工程师,还是底层系统程序员,在面试中几乎都会被问到:为什么用户态和内核态切换会有开销?如何减少这种切换? 本文将从硬件机制、内核实现和工程实践三个层面,系统性地拆解这个问题。...

阅读(15)评论(0)赞 (0)

linux

Linux 面试中系统调用、软中断、硬中断的区别与联系

pren 发布于 2026-09-22

在 Linux 面试中,系统调用、软中断和硬中断是三个高频考点。它们分别处于不同的抽象层次,却共同构成了操作系统与硬件、用户程序与内核交互的基础。很多候选人对单个概念能说清楚,但一旦被追问“它们之间怎么协作”“谁先谁后”“谁可以睡眠”就容易卡壳。本文从面试实战角度出发,系统梳理三...

阅读(19)评论(0)赞 (0)

redis

Redis 主从切换时数据丢失的场景分析

pren 发布于 2026-09-22

Redis 主从切换是保障高可用的核心机制,但很多开发者在使用哨兵(Sentinel)或 Cluster 时都遇到过切换后数据丢失的问题。不少人第一反应是“Redis 不可靠”,但事实上,绝大多数数据丢失都源于对异步复制模型的理解偏差,以及配置参数与业务场景不匹配。本文将从复制原...

阅读(14)评论(0)赞 (0)

php

PHP 面试题:isset、empty、is_null 到底有什么区别

pren 发布于 2026-09-22

在 PHP 面试中,isset()、empty() 和 isnull() 是一组出镜率极高、却极容易被混淆的函数。很多候选人在笔试时能写出它们的定义,但一旦面试官追问“未定义变量传入会怎样”“0 和空字符串算不算空”“为什么 empty() 里不能放函数返回值”,就开始支支吾吾。...

阅读(22)评论(0)赞 (0)

php

PHP 面试题:说说 PHP 数组底层哈希表实现与扩容机制

pren 发布于 2026-09-22

PHP 的数组(Array)是日常开发中最常用的数据结构,它既可以作为列表(List)使用,也可以作为字典(Map)使用。很多人只知道“PHP 数组很强大”,但当面试官问“PHP 数组底层是怎么实现的?扩容机制是怎样的?”时,往往答不上来。本文从底层结构出发,讲清楚 PHP 数组...

阅读(25)评论(0)赞 (0)

php

PHP 面试题:== 和 === 在 PHP 中到底差在哪里

pren 发布于 2026-09-22

在 PHP 面试中,== 和 === 的区别几乎是一道必考题。很多候选人能脱口而出“一个是松散比较,一个是严格比较”,但再往下追问“松散比较到底怎么松”“有没有踩过坑”,能答清楚的人就少了一半。这篇文章从底层规则到真实案例,把这两个运算符彻底讲透。 一句话概括 ==(松散比较):...

阅读(23)评论(0)赞 (0)

php

PHP 面试题:PHP-FPM 的进程模型与 max_children 调优实战

pren 发布于 2026-09-22

如果你去面试 PHP 中高级岗位,PHPFPM 几乎是绕不开的话题。面试官不会只问你“PHPFPM 是什么”,而是会顺着进程模型一路问到 maxchildren 怎么算、pm.maxrequests 设多少、502 和 504 分别意味着什么。这篇文章就围绕这条主线,把面试高频考...

阅读(19)评论(0)赞 (0)