软件系统性能优化

上传人:zhu****ng 文档编号:253080859 上传时间:2024-11-28 格式:PPTX 页数:21 大小:302.04KB
返回 下载 相关 举报
软件系统性能优化_第1页
第1页 / 共21页
软件系统性能优化_第2页
第2页 / 共21页
软件系统性能优化_第3页
第3页 / 共21页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2013-1-19,#,软件系统性能优化,余 庆,2013,年,1,月,19,日,性能优化的范畴,硬件,操作系统,数据库,软件,硬件选型,计算密集型:,CPU,IO,密集型:硬盘,淘宝,CDN,硬盘选型(混合存储,纯,SSD,),操作系统优化,OS,及版本:,Linux 2.6.35,通过,RPS,支持网卡多队列,系统参数调优,文件系统调优,网络调优,淘宝,CDN,优化实践,使用淘宝自己的,kernel,网卡驱动升级,内核参数统一设置,irq,绑定:绑定硬件中断到不同,CPU,关闭,irqbalance,关闭网卡,LRO,和,GRO,数据库优化,Server,端调优,SQL,优化,软件性能优化,架构,算法和实现,软件架构,时空转换,时间换空间,空间换时间,充分利用,cache,:,自己实现:,ATS,memcached,、,redis,支持多核:,多线程:,ATS,子进程:,squid,、,nginx,支持高并发:事件驱动,充分发挥磁盘,IO,效率:不做,RAID,,直接挂载单盘,分布式:利用多机资源,淘宝,CDN,架构优化,现状:三层结构,LVS,HaProxy ATS,改进,阶段一:二层结构,LVS ATS,阶段二:硬件负载均衡,ATS,算法和实现,1.,选用合适的开发语言,C or C+,Java,Erlang,Go,Python,、,PHP,。,算法和实现,2.,使用合适的数据结构,比如实现快速查找:,有序数组(,C,中的,qsort,和,bsearch,),Hashmap,二叉树(,AVL,、红黑树),Trie,树,Freelist,算法和实现,3.,尽量不要用锁:,lock free,子进程方式,CAS,4.,使用内存池,快速分配和回收,避免内存碎片,5.,使用连接池,减少建立连接开销,算法和实现,6.,减少内存拷贝,7.,慎用正则表达式:尤其是逐个匹配方式,8.,尽量减少重复计算,9.,资源是有限的,节约使用内存!,正则表达式匹配优化例子,map,http:/img01- concat(char*buff,const int bufSize,const char*items,const int count),memset(buff,0,bufSize);,for(i=0;i 0),*(buff+strlen(buff)=,;,snprintf(buff+strlen(buff),bufSize-strlen(buff),“%s”,itemsi);,if(strlen(buff)=bufSize-1),break;,C,程序性能优化,尽量不用动态分配内存,数组,内存池,尽量减少系统调用次数,Buffer,方式,增加,buffer,大小,采用,cache,:比如获取当前时间,内存对齐,编译优化,优化后代码,void concat(char*buff,const int bufSize,const char*items,const int count),int len=0;,*,buff=0;,for(i=0;i 0),*(buff+len+)=,;,len+=snprintf(buff+len,bufSize-len,“%s”,itemsi);,if(len=bufSize-1),break;,*,(buff+len)=0;,C+,程序性能优化,合理使用,inline,慎用,virtual,慎用,STL,Java,程序性能优化,尽量使用无锁类型数据结构,StringBuilder,、,HashMap,、,LinkList,StringBuffer,、,HashTable,、,Vector,字符串连接使用,StringBuilder,或,StringBuffer,指定初始化大小:,HashMap,,,StringBuilder,性能优化典型案例,Nginx,Apache Traffic Server,FastDFS&FastDHT,Q&A,谢谢大家!,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!