数据库类程序该用 fsync 还是 fdatasync,为什么 fsync 是性能杀手?
数据库类程序该用 fsync 还是 fdatasync,为什么 fsync 是性能杀手? 本文先给出可直接复述的结论,再用最小代码说明fsync fdatasync 区别 性能 持久化的工作方式、判断依据、项目边界和常见误区。
操作系统 · 异步编程面试题第 1 页,显示第 1–7 题,共找到 7 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
数据库类程序该用 fsync 还是 fdatasync,为什么 fsync 是性能杀手? 本文先给出可直接复述的结论,再用最小代码说明fsync fdatasync 区别 性能 持久化的工作方式、判断依据、项目边界和常见误区。
io_uring 相比 epoll + 线程池做磁盘异步 I/O 解决了什么核心问题? 本文先给出可直接复述的结论,再用最小代码说明io_uring 共享环形队列 系统调用次数 异步IO的工作方式、判断依据、项目边界和常见误区。
为什么高并发服务用 epoll 而不是信号驱动 I/O(O_ASYNC/SIGIO)? 本文先给出可直接复述的结论,再用最小代码说明信号驱动IO SIGIO epoll 对比的工作方式、判断依据、项目边界和常见误区。
sync_file_range 为什么适合写前日志(WAL)这类需要细粒度回写的场景? 本文先给出可直接复述的结论,再用最小代码说明sync_file_range 异步回写 WAL 细粒度的工作方式、判断依据、项目边界和常见误区。
write 返回成功后,数据到达磁盘的顺序和时机由什么决定? 本文先给出可直接复述的结论,再用最小代码说明write 写回 dirty page 回写 落盘时机的工作方式、判断依据、项目边界和常见误区。
Linux 信号有哪些不可靠性,为什么信号处理函数里只能调用异步信号安全函数? 本文先给出可直接复述的结论,再用最小代码说明Linux 信号 异步信号安全的工作方式、判断依据、项目边界和常见误区。
signalfd 相比传统信号处理函数解决了什么问题? 本文先给出可直接复述的结论,再用最小代码说明signalfd 信号处理的工作方式、判断依据、项目边界和常见误区。