Skip to main content

Posts

Showing posts from March 10, 2019

An introduction to monitoring and alerting with timeseries at scale, wit...

ps aux output meaning

$ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND timothy 29217 0.0 0.0 11916 4560 pts/21 S+ 08:15 0:00 pine root 29505 0.0 0.0 38196 2728 ? Ss Mar07 0:00 sshd: can [priv] can 29529 0.0 0.0 38332 1904 ? S Mar07 0:00 sshd: can@notty USER   = user owning the process PID   = process ID of the process %CPU   = It is the CPU time used divided by the time the process has been running. %MEM   = ratio of the process’s resident set size to the physical memory on the machine VSZ   = virtual memory usage of entire process (in KiB) RSS   = resident set size, the non-swapped physical memory that a task has used (in KiB) TTY   = controlling tty (terminal) STAT   = multi-character process state START   = starting time or date of the process TIME   = cumulative CPU time COMMAND   = command with all its arguments

Differences and relations between VIRT and USED in output of top?

RES   is the amount of RAM currently used by the process. This value can vary because memory pages might be swapped in or out. It might even be 0 for a process that has been sleeping for a long time, e.g. an unsolicited daemon. VIRT   is the full size of all memory the process is using, whether in RAM or on disk (shared objects, mmaped files, swap area) so VIRT is always larger or equal to RES. A process is always dealing with (i.e. allocating / accessing / freeing) virtual memory. It is up to the operating system to map some or all of these pages to RAM. USED   is less than   VIRT   because it doesn't include the memory that is backed by something else than swap, for example code and libraries.

HTTP 简史 | Linux 中国

介绍 超文本传输协议 Hypertext Transfer Protocol (HTTP)是互联网上最普遍和广泛采用的应用程序协议之一。它是客户端和服务器之间的通用语言,支持现代 Web。从最初作为单个的关键字和文档路径开始,它已成为不仅仅是浏览器的首选协议,而且几乎是所有连接互联网硬件和软件应用程序的首选协议。 在本文中,我们将简要回顾 HTTP 协议的发展历史。对 HTTP 不同语义的完整讨论超出了本文的范围,但理解 HTTP 的关键设计变更以及每个变更背后的动机将为我们讨论 HTTP 性能提供必要的背景,特别是在 HTTP/2 中即将进行的许多改进。 HTTP 0.9: 单行协议 蒂姆·伯纳斯·李 Tim Berners-Lee  最初的 HTTP 提案在设计时考虑到了简单性,以帮助他采用他的另一个新想法: 万维网 World Wide Web 。这个策略看起来奏效了:注意,他是一个有抱负的协议设计者。 1991 年,伯纳斯·李概述了这个新协议的动机,并列出了几个高级设计目标:文件传输功能、请求超文档存档索引搜索的能力,格式协商以及将客户端引用到另一个服务器的能力。为了证明该理论的实际应用,构建了一个简单原型,它实现了所提议功能的一小部分。 ◈ 客户端请求是一个 ASCII 字符串。 ◈ 客户端请求以回车符(CRLF)终止。 ◈ 服务器响应是 ASCII 字符流。 ◈ 服务器响应是一种超文本标记语言(HTML)。 ◈ 文档传输完成后连接终止。 这些听起来就挺复杂,而实际情况比这复杂得多。这些规则支持的是一种非常简单的,对 Telnet 友好的协议,一些 Web 服务器至今仍然支持这种协议: $ > telnet google . com 80 Connected to 74.125 . xxx . xxx GET / about / ( hypertext response ) ( connection closed ) 请求包含这样一行: GET  方法和请求文档的路径。响应是一个超文本文档,没有标题或任何其他元数据,只有 HTML。真的是再简单不过了。此外,由于之前的交互是预期协议的子集,因此它获得了一个非官方的 HTTP 0.9 标签。其余的,就像他们所说的,都是历史。 从 199

【自我提升】改变生活的8个好习惯 Healthy Home Habits

Practical Alerting from Time-Series Data

Written by Jamie Wilkinson Edited by Kavita Guliani May the queries flow, and the pager stay silent. Traditional SRE blessing Monitoring, the bottom layer of the   Hierarchy of Production Needs , is fundamental to running a stable service. Monitoring enables service owners to make rational decisions about the impact of changes to the service, apply the scientific method to incident response, and of course ensure their reason for existence: to measure the service’s alignment with business goals (see   Monitoring Distributed Systems ). Regardless of whether or not a service enjoys SRE support, it should be run in a symbiotic relationship with its monitoring. But having been tasked with ultimate responsibility for Google Production, SREs develop a particularly intimate knowledge of the monitoring infrastructure that supports their service. Monitoring a very large system is challenging for a couple of reasons: The sheer number of components being analyze The need to main