Hello!
2014-12-09 1:59 GMT-08:00 学不可以已:
> 想写一个模块,在nginx一边吐数据的时候,一边打印间隔时间内的数据量信息,大概思路是:
>
> 在请求NGX_HTTP_POST_READ_PHASE阶段通过ngx_add_timer添加个定时器事件,比如1秒。1秒打印一次r-connection->sent数据。
>
貌似这种需求通过 systemtap 外部工具进行采样统计更直接、更简单也更高效。
> 我的问题是:
> 1.但是为什么在吐数据的时候,这个定时器是不工作的,或者说被阻塞了呢。
你 100% 确定你的请求在吐数据时需要很多秒这么久的时间么?如果真是如此,你一个请求得输出多大的数据量呀(考虑到系统发送缓冲区的默认大小)。
> 2.各位有什么好的实现方式或者建议,或者帮我指正下思路,新手所以不确定原因出在什么地方,谢谢~
>
见上。
Regards,
-agentzh