Golang 中 defer Close() 的潜在风险
作为一名 Gopher,我们很容易形成一个编程惯例:每当有一个实现了 io.Closer 接口的对象 x 时,在得到对象并检查错误之后,会立即使用 defer x.Close 以保证函数返回时 x 对象的关闭 。
php服务器 与redis交互大量CLOSE_WAIT分析
最近发现有一台访问量很小(大概1000次/天)的服务器,在与redis交互的过程中,出现了大量的CLOSE_WAIT网络状态,导致fd资源被打满。初看很反直觉,访问量小而占用资源特别多,最终通过分析tcp协议,以及分析php-fpm模型,最终找到并解决了问题。