fcgi作为客户端需要注意的几点

来源:互联网 发布:什么是算法设计 编辑:程序博客网 时间:2024/05/21 22:40

fcgi作为中间层,需要与后端server通信进行数据处理,这里需要注意一下几点:

1.要做好超时处理,fcgi跟cgi不同,往往只有几个固定数量的进程,与server类似,因为如果一个fcgi进程挂住会导致整个fcgi逻辑层的处理能力下降N分之一(N为fcgi进程数)。这里的超时包括connect超时、send超时和recv超时

2.server对每一次fcgi请求都要有回包,在fcgi recv到回包后退出处理,关闭与server的连接

3.recv时要注意一定要recv到整个逻辑包(注意这里是整个逻辑包,即包头中标识的包头+包体的长度,收完这样一块buff才可以认为是recv完成)

4.注意mtu,1500,如果是通过poll来实现recv超时,一定要注意3中提到的recv全部逻辑意义上的完整包,因为对于大于mtu的包来说,肯定会大于一次发送,所以recv也必须大于一次


最新的socket库可以在http://download.csdn.net/source/3530843页面下载,希望对有这方面需求的同学们有所帮助

原创粉丝点击