纪念何欣谕小朋友

记得应该是一年级上学期的某一天,第一次见到欣谕。她坐在妈妈的电动车后面,我骑车带着文莘,在校门口欣谕妈妈开心的叫文莘的名字,于是我就认识了这个同班可爱的小天使。小学上学的时间很固定,于是我们经常在上学路上碰到,经常同时抵达校门口,同时打着招呼。

使用pt-tcp-model分析tcp性能

pt-tcp-model可以对tcpdump抓包结果进行进一步分析,例如:识别一个TCP会话的请求和响应包,从中提取会话处理时间。还可以根据多种条件进行数据提取,具体可以参见man page。

升级xen guest内核版本到3.5

一直用suse10作为线上系统运行,内核版本是2.6.16,很多新特性不具备。xen进入内核之后,现在终于可以将guest OS升级到新版本内核,体验众多新特性。

使用systemtap和utrace做代码性能分析

据说dtrace是这十年来操作系统领域里最大的技术进步,可惜是solaris独有的,mac os x的移植也不是很完全。当初用unix的时候,比较排斥solaris的性能,一般都是在hpux或者aix下面调试,所以对dtrace一无所知。最近接触到linux的systemtap,才了解到dtrace,但是现在也没sun工作站用了。

nginx源码解析(5)-配置文件设计

先来看nginx的配置文件格式,分层设计,通过大括号可以进行嵌套,层次最多4层。例如从http指令到index指令,共有4层。每个指令可以支持字符串/整数等类型参数,参数个数可以定制。

ngx-lua源码阅读笔记(4)

r->write_event_handler是request这个结构的写事件处理函数,这个函数处理的是客户端与nginx之间的connection,而ngx-lua和google服务器之间的连接并不归他处理;所以,只有在进入content phase之后,才会注册r->write_event_handler,才会发送数据到客户端。

ngx-lua源码阅读笔记(3)

ngx-lua在增加了cosocket特性之后,才真正具有了作为一个应用开发平台的能力。与nodejs相比,在web应用开发能力上已经没多大差别,欠缺的是第三方库和开发者的活跃度。但对于高性能服务器开发来说,基本的mysql/memcache/redis/mongodb等客户端API都已经具备,使用ngx-lua并不会觉得捉襟见肘,反而能在代码书写/性能上带来巨大收益。

ngx-lua源码阅读笔记(2)

续上一篇,加载完LUA代码之后,再来看看怎么执行LUA。

ngx-lua源码阅读笔记(1)

ngx_lua模块的背景可以参考这篇文章《51CTO专访淘宝清无:漫谈Nginx服务器与Lua语言》和这个ppt《ngx_drizzle/lua前世今生》。

graphviz使用笔记

Graphviz (Graph Visualization Software的缩写)是一个由AT&T实验室启动的开源工具包,用于绘制DOT语言脚本描述的图形。