- 博客(6)
- 资源 (5)
- 收藏
- 关注
原创 gprof---Linux程序性能分析工具
<br />性能分析经常会用到,自己用计时器自己统计或者用工具。gprof是Linux上常用的性能分析工具。<br />用法:<br />1. 编译时,加-pg, g++ -pg main.cpp;<br />2. 执行一下程序, ./a.out,生成gmon.out;<br />3. gprof a.out,分析结果就出来了。
2010-12-30 17:11:00 1671
原创 putty登录到shell.sourceforge.net方法
<br />1. Session<br /> host name: shell.sourceforge.net port: 22 ssh<br /> <br />2. Connection->Data<br /> Login detail Auto-login username: user, project-name<br /> <br />3. Connection->SSH<br /> Remote command: create
2010-12-26 14:08:00 1415
原创 在一个IP:Port建立多个连接和启动监听
1. Socket Handle和地址对 一个socket handle对应srcIP:srcPort&destIP:destPort 在同一个地址上建立多个连接,像下面的实例: ip1:port1 --> ip5:port5 ip1:port1 --> ip6:port6 接着在这个地址上创建监听socket, ip1:port1 --> *:* 对应所有的ip&port。2. Herm的实现代码 在同一个地址上创建多个socket handles,关键在于
2010-12-13 17:07:00 2710
原创 服务器实现心跳机制的两种策略
<br />大部分CS的应用需要心跳机制。心跳机制一般在Server和Client都要实现,两者实现原理基本一样。Client不关心性能,怎么做都行。<br />如果应用是基于TCP的,可以简单地通过SO_KEEPALIVE实现心跳。TCP在设置的KeepAlive定时器到达时向对端发一个检测TCP segment,如果没收到ACK或RST,尝试几次后,就认为对端已经不存在,最后通知应用程序。这里有个缺点是,Server主动发出检测包,对性能有点影响。<br /> <br />应用自己实现<br />
2010-12-04 10:48:00 13073 2
原创 对端进程和主机非法崩溃对本地的tcp连接的不同影响
<br />1. 对端进程崩溃<br /> 对端协议栈将发出FIN;本地进程如果在recv或select/epoll,能感知到对端关闭。<br /> <br />2. 对端主机崩溃<br /> 这个相当于拔网线或者中间路由器故障,崩溃端不做任何事情;本地进程只能通过SO_KEEPALIVE或应用的KEEPALIVE去检测对端挂了。<br />
2010-12-04 09:54:00 1991
转载 使用 kqueue 在 FreeBSD 上开发高性能应用服务器
本文出处:http://www.ibm.com/developerworks/cn/aix/library/1105_huangrg_kqueue/概述kqueue 是 FreeBSD 上的一种的多路复用机制。它是针对传统的 select/poll 处理大量的文件描述符性能较低效而开发出来的。注册一批描述符到 kqueue 以后,当其中的描述符状态发生变化时,kqueue 将一次性通知应用程序哪些描述符可读、可写或出错了。kqueue 支持多种类型的文件描述符,包括 socket、信号、定时器、AI
2010-12-01 10:13:00 3881 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人