又拍云上的文件和本地服务器上的文件同时存在,如何实现自动切换

发布于 2022-08-26 16:24:25 字数 822 浏览 12 评论 0

用户在上传文件的时候,把文件上传到我们的服务器的同时文件被同步到又拍云.
所有上传的文件都会在数据库中记录相关信息.而且会有两个访问地址:
一个是我们服务器的,如:
http://img04.xxxx.com/13/7/09/202d3edae64de8bb95a2e1d35dc27a9d.jpg
一个是直接从又拍云的,如:
http://img04-locl.xxxx.com/13/7/09/202d3edae64de8bb95a2e1d35dc27a9d.jpg
如果文件成功上传到我们的服务器,但在同步又拍云的过程中出错了,会引用的是我们服务器的地址, 如果同步成功就使用又拍云的地址,我们后台会定期把未同步成功的文件同步到又拍云.

问题:
文件同步到又拍云失败后,其他地方引用我们服务器的文件地址,之后定时任务把文件同步到又拍云,怎么去更改其他地方引用的这个地址

我能想到的方法:

  1. 记录引用这个图片的相关信息,定时任务同步成功后,修改之.<记录的引用数据会很大>
  2. 使用一个代理地址,这个代理来判断,是输出本服务器的文件,还是又拍云的...<感觉这种很不爽>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

指尖上的星空 2022-09-02 16:24:25
<img src="upyun src" onerror="this.src='local src';" />
撕心裂肺的伤痛 2022-09-02 16:24:25

直接使用七牛的镜像存储功能,这样用户访问到的是七牛的资源,如果七牛这边没有数据就会从你的源站中取,并存储在七牛(不是像 CDN 那样的缓存),这样下次用户就能直接从七牛这边取数据了。

关于镜像存储,参考这个链接:http://blog.qiniudn.com/morrior-storage.md.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文