- 浏览: 778 次
- 性别:
- 来自: 深圳
最新评论
文章列表
普通的数据结构教科书对邻接表的实现中规中矩,耶鲁大学教授James Aspnes的代码显得非常油菜花,而且运用了C语言的一个称为bug的特性,不检查数组越界。
选几小段分析一下:
struct successors{
int d; /* number of successors */
int len; /* number of slots in array */
char is_sorted; /* true if list is already sorted */
int list [1]; /* actual list of successors */
};
...
记一次线上产品的性能问题的分析
- 博客分类:
- 性能调优
生产环境上有个调用很频繁的service,性能不太好。表现为平均500次调用有5,6次极慢以至于客户端超时,也就是说失败率为百分之一。在高并发的情况下尤其明显。
这个问题摆到了我的面前。暂且叫这个service为A吧
还有什么办法,从日志入手吧。
首先,从海量日志中过滤出有关A的调用,方法很多,我用了vim中的正则表达式匹配,这个问题按下不表,以后有机会再专门谈正则表达式。过滤出来的日志记录了A的调用发生时间,结束时间,调用状态,SessionID等重要信息。
第二,分析一下吧,该服务从晚上22:15:37开始,到22:20:01结束,一共不到五分钟
总调用数:
...