设置:
带有帖子的博客,使用 Laravel 构建,其中:
因此,它总共需要存储(我猜是调整大小)、呈现等 3000 张图像*。
这是长期的理想数量,我不是在寻找“可扩展”的解决方案,因为不会出现疯狂的指数增长。
*实际上目前它更少,我认为对于这些数量的媒体文件,它是 1000/1500/2000 还是 3000 并不重要。如果那是错误的,请纠正我。
一些额外的注意事项:
因此,困境在于将所有图像本地存储在 Storage 文件夹中(使用某些 Laravel 包操作图像)。另一种可能性是 cloudinary,我不太了解,只是它可以存储/操作/备份/使用他们的 api 来呈现我存储在那里的图像。
如果我选择在本地进行 - 在本地存储用户上传的图像是否安全?我如何确保它不是伪装图像文件的恶意软件?
如此数量的图像/内容在本地存储时是否会导致共享主机的性能问题?
使用 cloudinary 对我有什么好处?
谢谢。
最佳答案
在这种情况下,Cloudinary 实际上可以提供很多帮助。
您可以将 Cloudinary 集成到项目中,而不是在本地存储资源并编写一些内容来操作它们。
这将释放服务器空间。在本地存储图像可能会或可能不会影响性能,具体取决于体系结构,但释放服务器资源始终是一个好习惯。
另外,manipulation并且可以通过简单的 API 调用在第一次请求时(或者如果您愿意,可以在请求之前急切地)即时完成图像的交付。因此,您不需要编写新的东西,而是利用现有的 API。
Cloudinary 还有一个功能齐全的 free tier你可以使用。如果您目前不期望指数级增长,那么该层对于项目来说已经绰绰有余了
完全披露:我目前在 Cloudinary 工作,(但上述内容仍然成立 :))。
关于laravel - 在本地存储图像 vs cloudinary vs s3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59810225/