本文中,我们将探究 Linux 中 cpu 使用率 iowait 定义和计算方式。iowait 很高的系统,一定存在 IO 瓶颈吗?通过实验验证和讨论了综合观测系统的 IO 压力的方式。
本文中,我们将探究 Linux 中 cpu 使用率 iowait 定义和计算方式。iowait 很高的系统,一定存在 IO 瓶颈吗?通过实验验证和讨论了综合观测系统的 IO 压力的方式。
限流器是服务治理的重要一环。但常见的讨论集中于对 频率 的限制。本文结合笔者最近的需求,分析 Go 官方限流器 time/rate 的实现原理,结合实践对 带宽/流量限制 可能遇到的问题进行讨论。
近一个月从底层翻阅了 Apache Traffic Server 的磁盘缓存引擎,俞发觉得精妙。另外自己在开发的 web 代理缓存 hitori 中,也确实需要一款大容量磁盘缓存引擎。便实现了一个磁盘缓存引擎库,名字叫做 bakemono。
100 Go Mistakes and How to Avoid Them 阅读笔记。4-Control Structures, 6-Functions and Methods, 7-Error Management
100 Go Mistakes and How to Avoid Them 一书主要描述了使用 Go 语言编程时的常见问题。本文是博主对第三章 - 数据类型 Data type 的阅读笔记。
100 Go Mistakes and How to Avoid Them 一书主要描述了使用 Go 语言编程时的常见问题。本文是博主对第二章 - Code and project organization 的阅读笔记。
平常我们在做应用层开发时,很少会注意到 HTTP 请求的大小写敏感问题。笔者在围观一个 HTTP 服务端 Header 的解析程序时,发现了一个微妙的 bug。这篇笔记是针对该问题的一个有趣的探究。
本文为一次笔者针对 SSD 调优存储软件的笔记。意外地发现很多 dev 同僚对一些现代数据中心的基础存储设备规格没有概念,遂调研整理此文,供读者 warm-up 阶段作为起步参考。
在日常操作中,惊奇地发现老牌磁盘工具 util-linux fdisk 的一个容量显示 bug。笔者根据该值配置线上环境,最终导致了磁盘越界问题,好在最终影响范围不大。另外,也追踪源码,探究一下 fdisk 中的磁盘容量的计算方式。
Unix-like 操作系统中,程序的 stderr、exit status,以及 Go 语言如何捕捉命令执行错误实例。
2021年可能是我最有体验感的1年。 Simple, Happy, Together 是公司某次 Campign 的主题语,我想用来形容这一年,很合适。
上节中,我们了解了自治系统AS和BGP协议。这次我们将使用MyTraceroute工具,亲手追踪我们发出数据包的路径。并介绍了一篇文献,如果我们要“感知全球的网络拓扑信息”,建设一个动态的分布式全球网络链路监测系统,可以做哪些操作。
上节中,我们认识了Internet物理上的拓扑。但网络是如何找到较优的线路进行连接呢?今天我们将在逻辑组成上进行探究,包括自治系统AS和BGP协议。
作为用户或开发者,我们仿佛已经对《畅通的互联网连接》这一事实深信不疑。但是,互联网世界究竟是怎么组织起来的呢? 本文为系列第1篇文章,涉及互联网网络物理组成上的不同层级。