2016-07-14 76 views
7

目前我們有一個新的服務器環境與多個服務器,所以如果我們下載存儲庫並運行gulp laravel elixer的緩存清除功能不起作用,因爲每個服務器都有不同版本的.js和.css文件。Laravel elixer版本控制(緩存攔截器)多個服務器

問題是負載平衡可以將用戶發送到每個請求的服務器。某些瀏覽器似乎不受此問題困擾,但例如,我無法使用JMeter正確加載css或js進行負載測試。

有沒有一種方法來同步編譯而無需將編譯的文件添加到存儲庫或FTPing的一切?

我們正試圖通過運行一個腳本來自動化部署,每次更新分支時都會下拉最新的回購庫productiosn

+0

它不起作用?或者你的意思是你必須不斷提交冗餘版本? –

+0

它運行的非常漂亮,但每個服務器都有一個不同的緩存清除文件名 – brianlmerritt

+0

我已經使用laravel已經有一段時間了,所以請提醒我爲什麼這很重要?你的源代碼SASS應該在每個開發機器上都保持不變,而你沒有提交編譯後的CSS,那麼如果它不同,它又有什麼關係?或者您是否在談論集羣生產環境中的某種負載平衡器問題,以便最終用戶可能必須根據負載平衡器將其處理到哪個節點來獲取這些資源的冗餘副本? –

回答

4

我認爲這個問題的唯一解決方案是提交編譯資產文件。

我發現這個解決方案起初很奇怪,因爲我們沒有版本vendor文件夾。

但最後,我發現大多數前端項目總是與編譯後的文件關聯dist文件夾。

因此,您每次修改資產文件時都需要提交公開路徑的build文件夾。

當然,在推動文件最小化之前,別忘了製作一個gulp --production

+0

謝謝 - 我會在週一一看,回來:) – brianlmerritt

+0

我認爲你是接近,但登克爾的建議也應包括在回答:) – brianlmerritt