Buffer 是对磁盘数据的缓存,而 Cache 是文件数据的缓存,它们既会用在读请求中,也会用在写请求中。
来自:16 | 基础篇:怎么理解内存中的Buffer和Cache?
23 人划过
并且交互过程不允许被其他进程或中断打断。
来自:07 | 案例篇:系统中出现大量不可中断进程和僵尸进程怎么办?(上)
11 人划过
ps 的输出中,名字括在中括号里的,一般都是内核线程
来自:09 | 基础篇:怎么理解Linux软中断?
8 人划过
把观察到的性能问题跟系统原理关联起来,特别是把系统从应用程序、库函数、系统调用、再到内核和硬件等不同的层级贯穿起来。
来自:开篇词 | 别再让Linux性能问题成为你的绊脚石
6 人划过
直接读写磁盘,对 I/O 敏感型应用(比如数据库系统)是很友好的,因为你可以在应用中,直接控制磁盘的读写。
来自:08 | 案例篇:系统中出现大量不可中断进程和僵尸进程怎么办?(下)
5 人划过
这两种读写方式使用的缓存自然不同。文件系统管理的缓存,其实就是 Cache 的一部分。而裸磁盘的缓存,用的正是 Buffer。
来自:22 | 答疑(三):文件系统与磁盘的区别是什么?
5 人划过
进程绑定到一个或者多个 CPU 上,可以提高 CPU 缓存的命中率,减少跨 CPU 调度带来的上下文切换问题
来自:12 | 套路篇:CPU 性能优化的几个思路
5 人划过
第三类,在长连接的场景中,通常使用 Keepalive 来检测 TCP 连接的状态,以便对端连接断开后,可以自动回收。但是,系统默认的 Keepalive 探测间隔和重试次数,一般都无法满足应用程序的性能要求。所以,这时候你需要优化与 Keepalive 相关的内核选项,比如:
来自:44 | 套路篇:网络性能优化的几个思路(下)
4 人划过
会隐藏后端服务器的真实 IP
来自:41 | 案例篇:如何优化 NAT 性能?(上)
3 人划过
则允许应用程序,给每个套接字配置不同大小的接收或发送缓冲区。应用程序发送数据,实际上就是将数据写入缓冲区;而接收数据,其实就是从缓冲区中读取。至于缓冲区中数据的进一步处理,则由传输层的 TCP 或 UDP 协议来完成。
来自:45 | 答疑(五):网络收发过程中,缓冲区位置在哪里?
3 人划过
*精彩内容为该课程各文章中划线次数最多的内容
编辑推荐
讲师的其他课程
包含这门课的学习路径
架构师
28门课程 150.1w人学习
运维工程师
32门课程 149.3w人学习
Python工程师
19门课程 116.8w人学习
后端工程师
27门课程 181.9w人学习
C++工程师
7门课程 51.0w人学习
看过的人还看了