我注意到 FastCGI 协议定义了一个 7 字节的记录(通信中使用的数据结构)标头和 1 字节的填充。必要时还会填充其他结构。想知道这个字节是否改变了任何东西,我对 7 字节和 8 字节缓冲区的 1000000 次顺序发送和接收进行了计时,结果发现……没有什么特别的。几次执行提供的数据如此多变,甚至不值得平均。(测试代码)
如果我必须通过 TCP 发送 7 字节数据是否值得添加一个字节,所以我的发送和读取操作在 8 字节缓冲区上进行?那来自哪里以及如何知道什么填充是合适的?如果套接字是 Unix 文件套接字还是 INET 套接字,有什么不同吗?如果发件人和收件人在同一主机上,会有所不同吗?