如何獲得回形針圖像上傳到上8個機(負載平衡)運行Rails應用程序工作嗎?回形針+導軌和負載平衡的機器
用戶可以上傳應用程序中的圖像。圖像存儲在其中一臺機器上。用戶稍後請求該圖像,但未找到該圖像,因爲該圖像是從另一臺機器請求的。
什麼是對這類問題的解決方法?我無法使用AWS或任何雲服務;圖像必須存儲在內部。
謝謝。
如何獲得回形針圖像上傳到上8個機(負載平衡)運行Rails應用程序工作嗎?回形針+導軌和負載平衡的機器
用戶可以上傳應用程序中的圖像。圖像存儲在其中一臺機器上。用戶稍後請求該圖像,但未找到該圖像,因爲該圖像是從另一臺機器請求的。
什麼是對這類問題的解決方法?我無法使用AWS或任何雲服務;圖像必須存儲在內部。
謝謝。
一種解決方案是使用NFS掛載的共享文件夾,這將是根的public/system
或任何你叫含曲別針的圖像文件夾。
有一些事情要考慮清楚,雖然一切工作:
soft
選項,並通過安裝一個高速局域網連接,例如:mount -o soft 10.0.0.1:/export/shared_image_folder
。如果您未指定soft
選項,並且資產服務器關閉,則您的Ruby實例將一直等待服務器上升。一切都會被卡住,網站將會向下看。瞭解到這一個難題...這些都是使用NFS的一般準則。我在一個相當大的製作網站上使用它,上面有成千上萬的圖像,它對我來說工作得很好。
如何指示Paperclip將文件寫入共享掛載文件夾,例如machine1? – alste
您必須「掛載」共享的NFS文件夾。在Linux中,'mount'將嘗試使用NFS來掛載網絡文件夾,將編輯我的答案。當然,你必須先安裝你的nfs服務器,並根據你的發行版安裝所需的軟件包, –
如果你不想使用像NFS的文件共享,可以將圖像存儲在數據庫中。下面是對回形針提供:database
存儲類型的寶石:
如果您不能使用AWS,你就必須要麼把圖像在數據庫或自己的文件存儲解決方案。將它們存儲在您的應用程序服務器上是不可行的。如果你丟失了其中一臺機器,你就失去了圖像。 –