AWS PHP SDK:将文件上传到 S3 后套接字未关闭

问题描述

我有使用 AWS PHP SDK 的最基本示例:

        $this->s3Client = new S3Client([
            'version' => 'latest','region'  => 'us-east-1','endpoint' => getenv('S3_ENDPOINT'),'use_path_style_endpoint' => true,'credentials' => [
                'key'    => getenv('S3_KEY'),'secret' => getenv('S3_SECRET'),],]);
        
            $insert = $this->s3Client->putObject([
                'Bucket' => getenv('S3_BUCKET_NAME'),'Key'    => $mykey,'Body'   => json_encode($this->events)
            ]);

这不是在普通请求中完成的,而是在 Ratchet WebSocket 服务器中完成的。当进程运行一段时间后,它会打开越来越多的与 S3 服务器的连接,这些连接在服务器达到打开文件限制之前永远不会关闭。

对我来说,AWS PHP SDK 似乎缺少 curl_close 之类的东西,我猜这会是库中的一个很大的错误而不会被注意到。

您知道是什么导致套接字保持打开状态吗?

提前致谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)