因此,我一直在玩Akka Actors,並且已經編寫了一些代碼,可以將計算分佈到集羣中的多臺機器上。在運行「主要」代碼之前,我需要在將要部署的每臺計算機上等待一個ActorSystem
,我通常通過一個Python腳本執行此操作,該腳本將SSH傳入所有機器,並通過執行類似cd /into/the/proper/folder/
和然後sbt 'run-main ActorSystemCode'
。在幾臺(集羣)機器上同時運行SBT(Scala)
我在其中一臺機器上運行這個Python腳本(稱爲「Machine X」),所以我將在我的機器X SSH會話中看到SSH'ing輸出到所有其他機器中。每當我運行這個腳本時,似乎所有的機器在實際運行之前都會重新編譯整個代碼,這讓我在做任何有用的事情之前坐在那裏幾分鐘。
我的問題是這樣的:
爲什麼他們需要重新編譯呢?所有機器上都有相同的JVM,所以不應該馬上運行?
我該如何解決這個讓每臺機器編譯「它自己的副本」的問題?
嗯,它是一個集羣,所以他們都共享相同的分區(NFS)..一個jar可以在多臺機器上運行嗎? – adelbertc
我不明白爲什麼它不應該工作。試試看,如果它不起作用,你仍然可以創建該jar的多個副本。 – drexin