我遇到以下问题:我试图为托管在同一公司内其他站点上的Maven存储库创建本地缓存。因此,我建立了Artifactory OSS,创建了两个指向异地服务器的远程存储库,并且一般而言,除了一些异常大的依赖之外,其他所有工作都按预期进行。请注意,它们不是带有数兆字节已编译代码的jar,而是装满图像数据的zip存档。最大的一个是8gb。
我的gradle构建每次都失败,因为我的本地Artifactory答复该工件确实存在,尝试下载它,然后导致WebSocketTimeout。当我直接访问异地服务器时,不会发生这种情况。当我取消选中“本地存储”时,它也可以正常工作,但这与我要实现的目标完全相反。
有什么想法吗?
答案 0 :(得分:0)
这里可能有多个超时时间。当您要求Artifactory为您下载并缓存某些内容时,它将:
这意味着对于较大的文件,Artifactory将需要一段时间才能将任何内容发送回客户端。如果客户端(或介于两者之间的内容,例如反向代理)的超时时间较小,则可能会出现问题。 Artifactory本身也有一个套接字超时设置。
如果文件在下载失败后的某个时间出现在Artifactory中,则反向代理或客户端本身可能存在超时问题,您应该尝试增加它们。如果该文件从未发送到Artifactory,则应转到远程存储库设置(UI->管理员->存储库->远程-> [存储库名称]->高级),并增加套接字超时(MS)< / strong>为当前值的两倍或三倍,刚好足以获取最大的文件,但又不能太大,因为它可能导致与不良服务器的连接过多。