我正在我的go服务器中的标准结构上调用该函数,如下所示:FormFilenet/httpRequest multiFile, header, err := req.FormFile("file") if err != nil { log.Printf("reader error: %s", err) // response error handling return }使用 Docker Compose 在本地运行时,它会成功运行,但是当我在 Kubernetes 集群上运行它时,我从 Pod 日志中收到以下错误:reader error: multipart: NextPart: read tcp [host]:[port]->[differentHost]:[differentPort]: i/o timeout我已经将一个卷挂载到我的pod上,以处理缓冲区溢出对磁盘的任何写入。以下是相关的 k8s 部署配置: spec: containers: volumeMounts: - mountPath: /tmp name: file-volume securityContext: fsGroup: 1000 runAsGroup: 1000 runAsUser: 1000 volumes: - emptyDir: {} name: file-volume有谁知道导致此问题的原因以及如何解决?
2 回答
慕雪6442864
TA贡献1812条经验 获得超5个赞
您可以设置较长的服务器超时,当我们上传较大的文件/较慢的网络连接时,就会发生这种情况
s := &http.Server{
ReadTimeout: 150 * time.Second,
WriteTimeout: 150 * time.Second,
}
温温酱
TA贡献1752条经验 获得超4个赞
读取超时表明,与其说这是 Pod 内部的问题,例如卷装入),不如说是服务发现问题。客户端似乎无法读取您的 Pod。可能与您的 K8s 服务或入口配置有关。
或者,也许你的 Pod 无法正常运行。在这种情况下,您必须调查 Pod 日志和 K8s 事件日志。
- 2 回答
- 0 关注
- 142 浏览
添加回答
举报
0/150
提交
取消