分片上传文件,调用oss_upload_part_from_file接口,频繁出现错误,错误信息如下:
CODE=-992,ERRORCODE=HttpIoError,ERRORMSG=a timeout was reached 意思是超时了。但我再次调用oss_upload_part_from_file此接口时 也还是失败返回同样的错误 而且
调用oss_abort_multipart_upload 去停止分片上传事件也是失败的,这样会产生碎片。感觉这时候服务器已经不鸟我了。求解????
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
遇到您描述的问题,这可能是由于网络不稳定、请求超时或者OSS服务端的临时问题导致的。您可以尝试以下几个步骤来解决和排查问题:
检查网络状况:确保您的网络连接稳定,没有频繁断开或延迟较高的情况。可以尝试使用ping命令检测与阿里云OSS服务端的连通性。
增加超时时间:在调用oss_upload_part_from_file
接口时,如果允许,可以适当增加超时设置。虽然直接通过此接口调整可能不可行(因为这个参数通常由SDK内部设定),但了解使用的SDK是否有配置超时时间的选项是值得的。
重试策略:大多数SDK都内置了重试逻辑,以应对暂时性的网络问题或服务器繁忙状态。确认您的SDK配置是否启用了重试机制,并考虑调整重试次数和间隔时间。如果没有自动重试,您也可以手动实现简单的重试逻辑,在遇到错误时等待一段时间后再次尝试。
查看服务状态:登录阿里云控制台,检查是否有任何关于OSS服务的通知或维护信息,确认当前没有大面积的服务故障。
分片上传状态查询:在连续失败后,先不要急于调用oss_abort_multipart_upload
。可以通过oss_list_multipart_uploads
或oss_list_parts
查询当前分片上传的状态,确认是否存在未完成的分片上传任务。有时候,即使上传部分失败,任务状态可能已经更新,避免不必要的abort操作。
日志分析:详细查看调用接口时返回的日志信息,包括HTTP响应头等,这些信息可能会提供更多关于错误的具体原因。
技术支持协助:如果以上方法都无法解决问题,建议联系阿里云的技术支持,提供详细的错误信息、请求ID以及出现问题的时间点,以便他们能更有效地帮助您定位和解决问题。
资源限制检查:确认您的账户是否有足够的权限执行这些操作,以及是否达到了某些资源使用的上限,比如并发请求数量限制等。
记得在进行上述操作时,保持耐心并细致记录每一步的操作结果,这对于问题定位非常有帮助。