2017-01-09 74 views
1

我正在設置生產中的Lagom應用程序。我曾嘗試聯繫Lightbend獲得ConductR許可證,但很久沒有收到回覆。所以,現在我正在尋找一種替代方法。我有很多問題。由於現在應用程序的規模相當小,我認爲現在使用靜態服務定位器對我很有用(對其他選擇開放)。另外,我使用MySQL作爲事件存儲而不是Cassandra的默認配置(原因與此線程無關)。在生產中運行Lagom

爲了抑制卡桑德拉和Lagom的服務定位器,我已經添加以下行到我的build.sbt:

lagomCassandraEnabled in ThisBuild := false 

我還增加了以下的一段我application.conf與服務1-implement執行模塊。

lagom.services { 
    service1 = "http://0.0.0.0:8080" 
} 

對於開發環境,我已經能夠在TMUX會話使用sbt runAll成功運行我的應用程序。使用此配置,沒有服務定位器在默認的8000端口上運行,但我可以單獨在8080端口上運行service1。 (不知道這是否是預期的行爲。評論?)

我運行sbt dist創建一個zip文件,然後解壓縮並運行可執行文件。有趣的是,該zip是在service1-impl文件夾內創建的。那麼,如果我有多個模塊(服務?),是否會爲每個服務創建單獨的zip文件?

當我運行通過sbt dist創建的可執行文件時,它會嘗試連接到Cassandra並啓動一個服務定位器並忽略我添加的靜態服務定位器配置。基本上,它看起來像忽略了我添加到build.sbt的行。任何人都可以解釋這一點?

最後,如果集羣中有2個服務,service1和service2以及2個節點,節點1運行service1和node2運行這兩個服務,那麼我的靜態服務定位器在application.conf中的外觀應該如何並且由於每個服務都有自己的application.conf,我是否需要複製相同的配置wrt所有application.confs中的靜態服務定位器?

會是這樣的嗎?

lagom.services { 
    service1 = "http://0.0.0.0:8080" 
    service1 = "http://1.2.3.4:8080" 
    service2 = "http://1.2.3.4:8081" 
} 

由於每個具體的演員會在某個節點上產生了,如何將它與該服務定位器配置工作?

此外,我不想在生產中的tmux會話中運行此。在生產中最終運行此代碼的最佳方式是什麼?

回答

5

您可以立即免費開始使用ConductR開發模式,無需聯繫銷售人員。說明如下:https://www.lightbend.com/product/conductr/developer 您確實需要註冊(閱讀:提供有效的電子郵件)並接受TnC訪問該頁面。今天沙盒可以自由使用於開發模式,因此您可以快速方便地查看ConductR是否適合您。

對於生產,我很高興地說,如果您註冊w/Lightbend.com(與上面相同)並生成「免費層」許可證密鑰,那麼很快你就可以在生產中部署多達3個節點。

Lagom對微服務有着自己的看法。如果這些意見不被某個項目共享,那麼總是有Akka和Play。部分意見是部署應該很容易。好的工具在手中感覺「正確」。你當然可以自由地部署應用程序,但要準備在離你標記的路線更遠的地方生成更多的polyfill。

關於服務查找,ConductR提供重定向用於使用HTTP服務查找與播放WS [1] 「withFollowRedirects」關於sbt dist,每個子項目的服務將是一個包。您可以在Chirper示例[2]中看到這一點,其中sbt dist生成chirp-impl.zip,friend-impl.zip,activity-stream-impl等,如Chirper頂級build.sbt文件中所示。 由於ConductR是乾淨利落的路徑,因此您可以參考它是如何做的,以便更好地理解如何取代Lagom的自己的部署。這就是Lagom最熟悉的界面。許多ConductR除了核心已經是OSS,所以如果文檔沒有涵蓋某些內容,可以嘗試github。

信息披露:我是一位行爲良好的Lightbender。

  1. http://conductr.lightbend.com/docs/1.1.x/ResolvingServices

  2. [email protected]:lagom /活化劑lagom-java的chirper.git

+1

愛德華 - 我看沒有提到在網站上自由層的。你可以說得更詳細點嗎? –

+0

@TimPigden你是對的。目前尚不可用。現在正在開發所需的許可證模塊。我們絕對會宣佈一個免費層級,允許多達3個代理商在今年春天充分使用堆棧。 –

+0

差不多準備好了! http://conductr.lightbend.com/docs/2.1.x/ReleaseNotes#Free_Licensing –