我正在玩一个网络服务器,使用unix套接字和sendmsg/recvmsg将套接字文件描述符传递给新的服务器进程,而不会丢失任何请求。使用ab进行测试时,我发现客户端连接会徘徊,而apachebench(ab)会显示错误:“apr_poll:指定的超时已过期(70007)”。使用文件描述符传递时预先存在的连接的状态?
我怀疑文件描述符的地址发生了变化,这会导致打开的连接无效,但要确保每次请求结束时连接都关闭并没有什么区别,有几个请求会失败。
在套接字级还有一些额外的怪异或是只是奇怪吗?还有什么我应该考虑的?
编辑:使用PHP作为客户端发出请求也会在周期中停顿。
你通过服务器套接字(调用接受的),或者单独连接插座到其他服务器的过程? – user239558 2012-02-13 10:20:34
@ user239558传递服务器套接字。 – Scott 2012-02-16 22:43:14