产品中的性能优化总结

0x01 缘由

     引自:“一个重要的性能优化经验是:绝不应该相信你的“哪些部分会比较慢”直觉,而是应该在实际环境中测量API的真实性能概况,然后把优化精力集中在影响最大的部分。进一步说是,没必要一开始就实现最高效的API:先用一种简单的方式实现,在一切正常工作后,再找出需要优化的部分。”--《C++ API设计》。
     在整个3-6月从产品的简单设计,到产品的快速开发,到产品性能的优化,再到模块的规范和代码的规范上。虽然每个环节存在一些不规范的情况,至少在领导高压情况下完成了一个版本的开发,也达到了预期的性能指标。

0x02 优化场景

     场景不同,优化手段不同,优化要求也不同。我们的场景如下: 高效的数据包捕获和协议还原(类型xplico,博文其他有介绍)。
     处理性能:800Mbps  内存占用: 1G  CPU高负载下: 占用不超过30%  I/O性能;

0x03 采取的手段

     a.valgrid性能热点图;
     b.gperftool性能占比图;
     c.关键函数消耗时间;
     d.top/htop工具情况;
     e.python脚本统计;
     f.关键函数代码走查优化;
     g.查看i/o处占用;
     h.队列解耦、缓存;
     i.多核编程处理,线程逻辑核绑定;
     j.内存池技术处理;
     k.tcmalloc优化内存申请、分配;
     l.高效的AC匹配算法;
     m.自研一些包构造工具;
     n.大量的埋点统计;
     o.外场实时场景流量分析;

0x04 总结

     整个过程没有富有经验的同事,都是同事们想方设法,讨论查资料。踩过无数坑,但收获满满。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值