性能分析与监控工具与调试工具
perf
perf record [command]
收集 command 数据,将结果写入 perf.data
perf report
读取 perf.data
中采样数据,给出热点分析结果
perf record [command]
收集 command 数据,将结果写入 perf.data
perf report
读取 perf.data
中采样数据,给出热点分析结果
两种设计思想:
"worse is better" 的设计,例如 C 和 unix,可以满足 50%-80% 的需求 ,由于实现简洁因此便于移植。因此 C 和 unix 迅速占领了 50% 的用户。作者称 C 和 unix 是 ”终极电脑病毒“。
在此后人们会有更强的动力去完善 ”worse is better“ 的设计,最终将此类系统完善到 90%,使其接近 ”正确“ 的设计。
而一个 ”正确“ 的系统,可能需要花费 80% 的时间实现 20% 的功能,因此需要花费大量时间开发,同时可能只能在最复杂的设备上得到满意的结果。
SysVinit
:
初始化脚本位于 /etc/init.d/
,初始化脚本需要支持 start
, stop
, status
等命令
使用 service
命令运行初始化脚本SysVinit
只启动一次,在之后不跟踪单个服务
systemd
用于代替 SysVinit
,在初始化结束时, systemd
仍然作为守护进程运行。
使用 systemctl
与 systemd
交互,运行服务。
sudo systemctl enable [service]
开机启动服务sudo systemctl disable [service]
不开机启动服务sudo systemctl start [service]
sudo systemctl stop [service]
sudo systemctl restart [service]
实验室新到了一台 A100 四卡机,记录一下装机和运维过程。
好像成了实验室的网管(
发表于 sosp2003,经典系统工作 GFS
GFS 包括单个 master 节点。若干 chunkserver,被多个 client 同时访问
将文件分为大小固定的 chunk,每个 chunk 有一个全局唯一的 64位,由 master 在 chunk 创建时分配。
chunkserver 在本地以 linux 文件存储 chunk。每个 chunk 默认存储三个副本。