4 benpaobagzb

尚未进行身份认证

做人要谦虚

等级
博文 686
排名 1k+

使用gprof来对程序的性能分析总结

综述gprof用于分析函数调用耗时,可用之抓出最耗时的函数,以便优化程序。gcc链接时也一定要加-pg参数,以使程序运行结束后生成gmon.out文件,供gprof分析。gprof默认不支持多线程程序,默认不支持共享库程序。gcc-pg编译程序运行程序,程序退出时生成gmon.outgprof./proggmon.out-b查看输出注意事项程序如果不是

2016-06-17 21:39:54

服务器TIME_WAIT和CLOSE_WAIT详解和解决办法

昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下:http://blog.csdn.net/shootyou/article/details/6615051里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态。 在服务器的日常维护过程中,会经常用到下面的命令:netstat -n | aw

2016-06-17 21:31:19

wait3,wait4 用法

在阅读redis代码的时候看到的一些新知识,新用法,wait3的用法。redis的用法。[cpp] viewplain copy int statloc;         pid_t pid;           if ((pid = wait3(&statloc,WNOHANG,NULL)) != 0) {    

2016-06-17 21:28:34

linux 下的不同函数的编程效率分享总结

操作性能memset 1K150W次/smemcpy 1K150W次/smalloc 小字节 单线程100W次/sgettimeofday30W~400W次/stime30W~400W次/sgetpid

2016-06-17 18:27:19

基于Web开发模式的信息抽取

基于Web 开发模式的信息抽取信息抽取是一个互联网自然语言处理的一个首要环节,信息抽取的准确度会直接影响到后续的处理。信息抽取的目标是去除噪音,获取网页有价值的信息如网页的标题、时间、正文、链接等信息。 主流算法介绍网页信息抽取的方法有很多,比如从算法上分:基于模板的,基于信息量、基于视觉的、基于语义挖掘的、基于统计的。从HTML 处理上分为:基于行块、基于DOM 树。下面

2016-06-17 18:22:36

性能测试、指标和优化 -- 性能相关总结

这篇博文主要是涉及到服务端性能,对于前端性能比较少涉及,但是最后一部分简单介绍了前端(Web页面)的测试和调优。这篇文章最早写于2012年,今天翻出来,又重新梳理了一下。哦,对了,如果对本博客中所有文章有疑问,请发邮件到lihaibo2006$gmail.com,我一般晚上就能看到。一、性能测试的类型  实际上性能是一个很很宽泛的词,系统出了问题大多归结为性能有问题,比如访问速

2016-06-17 18:18:20

Linux下代码内存泄露检查工具valgrind

自己写的代码内存呼呼的往上涨,同事告诉我一个内存泄露检查的工具valgrind,于是就用了用。1安装sudoapt-getinstallvalgrind也可以到官方网站去下载:http://www.valgrind.org2使用结果输出到终端,运行命令valgrind--leak-check=full--track-fds=yes程序参数结果输出到日志

2016-06-17 18:16:15

推荐两篇Linux下的Socket文章

LinuxSocketLinux下Socket编程HTTP协议的简介HTTP协议的简介   HTTP协议是一种超文本传输协议(HypertextTransferProtocol),工作于网络应用层,自1990年起广泛应用于WWW的全球信息服务,HTTP协议的详细说明可以在网上查阅RFC2518、RFC2616等文档。   HTTP协议老的标准是HTTP

2016-06-17 18:13:30

memset效率问题

charbuff[10]初始化一个字符数组,只需要buff[0]='\0'即可,没有必要用memset,在使用该buff时,需要注意末尾加'\0',这样性能比较好。[cpp] viewplain copy#include   #include "sys/time.h"    void use_memse

2016-06-17 18:10:24

数据表水平切分的ID规则

这个问题很突出,所以转过来说一下。http://www.jianzhaoyang.com/database/sharding_groups_global_pk现在通过数据的水平切分(sharding)来实现数据库ScaleOut的解决方案受到了越来越多人的青睐,但是在切分过程中可能遇到的问题也肯定不在少数,如切分规则的设计,切分后的访问路由,切分后的主键的全局唯一等等。

2016-06-17 18:07:28

c++声明/定义,静态/非静态,变量/函数

我以前也很糊涂,所以研究了一下,写了一个例子。如下 //-----------------def.h----------------#ifndef_DEF_H_#define_DEF_H_staticinta=1;externintb;intadd();#endif //----------------de

2016-06-17 18:06:20

设置正确的线程数量

《高性能服务器架构 》中提到了SEDA,我搜了一下,发现这篇文章《SEDA性能优化的分析和模拟 》,对于线程数量的建议。假如一个Web请求,代码执行的时间为ST(ServiceTime),读文件、网络调用之类IO等待时间为为WT(WaitTime),CPU的个数是N、核数是M则线程数量TC(ThreadCount)为:    TC=N*M*(1+WT/ST) 

2016-06-17 17:56:15

代码行统计工具

统计h/c/cpp/cc/代码,Python写的,只是统计了行数,没有区分空行,注释等[python] viewplain copy#! /usr/bin/python  # coding=utf-8  import os,sys  def getCount(dr):      c = 0      for l in o

2016-06-17 17:52:27

SecureCRT自动登陆到服务器的脚本以及脚本编写简单说明

Secure用SSH登陆服务器时,如果服务器较多,登陆一次很麻烦,所以,可以自己编写VBScript来搞定。一、Secure脚本介绍Secure是VBScript脚本,VB脚本的教程,请参考有关文档。Secure自带的对象如下:Application对象,就是crt,是个顶层的对象,所有其他内容都从这个对象中获得Session,会话对象,负责连接相关

2016-06-17 17:51:04

C/C++计时器检查程序性能

一般设计C/C++程序需要每秒能处理多少的数据,因此可以做一个简单的计时器来计时,代码如下:[cpp] viewplain copy#ifndef _TIMER_H_  #define _TIMER_H_  #include   #include   using namespace std;  class Timer{ 

2016-06-17 17:49:57

Python发送邮件的例子

import base64, smtplib  from email.mime.text import MIMEText  from email.header import Header    def mail_info(data, date):      mailserver = "smtp.exmail.qq.com"      username = "server@x

2016-06-17 17:48:41

CPU负载的分析

最近对我的本本(4核8线程)用top命令看系统状况出现了CPU利用率超过200%的情况,非常诧异,查了下相关资料,把这个问题弄清楚了。首先来分析下CPULoadloadaverage:0.09,0.05,0.01分别是1分钟、5分钟、15分钟的平均Load。Load这个东西怎么理解呢,就像一条马路,有N个车道,如果N个进程进入车道,那么正好一人一个,再多一

2016-06-17 17:48:13

高性能服务器架构(High-Performance Server Architecture)

High-PerformanceServerArchitecture高性能服务器架构来源:http://pl.atyp.us/content/tech/servers.html译文来源:http://www.lupaworld.com/home/space-341888-do-blog-id-136718.html(map注:本人看了一遍,“于我心有戚戚焉”,翻译得也很好,于是

2016-06-17 17:42:41

GCC 提供的原子操作总结

gcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。其声明如下:type __sync_fetch_and_add (type *ptr, type value, ...)type __sync_fetch_and_sub (type *ptr, type value, ...)type __sync_fetch_and

2016-06-17 15:26:30

pthread_create 解析

函数简介pthread_create是UNIX,linux环境创建线程函数折叠编辑本段头文件#include折叠编辑本段函数声明intpthread_create(pthread_t*restricttidp,constpthread_attr_t*restrict_attr,void*(*start_rtn)(void*),

2016-06-17 13:37:41
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!