如何让 Paperclip 图像上传在 8 台机器上运行的 Rails 应用程序上工作(负载平衡)?
用户可以在应用程序上上传图像。图像存储在其中一台机器上。用户稍后请求图像,但没有找到,因为它是从另一台机器请求的。
此类问题的解决方法是什么?我无法使用 AWS 或任何云服务;图像必须存储在内部。
谢谢。
最佳答案
一种解决方案是使用 NFS 挂载一个共享文件夹,该文件夹将成为您 public/system
的根目录。或任何您称之为包含回形针图像的文件夹。
不过,要使一切正常工作,需要考虑一些事项:
soft
选项,并通过高速本地网络连接挂载,例如:mount -o soft 10.0.0.1:/export/shared_image_folder
.如果您没有指定 soft
选项,并且 Assets 服务器关闭,您的 Ruby 实例将继续等待服务器启动。一切都会卡住,网站就会往下看。艰难地学到了这一点... 这些是使用 NFS 的一般准则。我在一个拥有数十万张图片的大型制作网站上使用它,对我来说效果很好。
关于ruby-on-rails - 带有负载平衡机的回形针 + rails ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13594161/