2013-11-25 29 views
1

我正在開發一個項目,並且在此項目中,我需要異步調用多個conwarent web服務(至少5個webservice)。 爲此,whcih框架可用於Vertx,節點,或播放Vertx,Node或Play用於異步調用多個webservice

感謝

+0

Node.js和Play都將異步使用多個Web服務(我沒有使用Vertex)。我猜想在他們之間選擇更大的問題是您打算如何使用Web服務返回? –

+0

作爲評論發佈,因爲這指向我自己的博客,但是您可能會發現我確實有幫助的截屏視頻:http://www.jamesward.com/2013/10/30/intro-to-reactive-composition-with-the -typesafe-reactive-platform此屏幕視頻介紹瞭如何使用Play Framework執行Reactive Composition(多個異步和非阻止請求)。 –

回答

0

播放文檔不太好。如果你想在scala中實現,可以選擇play,但是對於java,你可能不會發現它很棒,因爲Java中不支持很少的東西(比如編寫你自己的body parser,你需要使用scala)

Nodejs可能是一個不錯的選擇,但是在nodej中利用所有的cpu核心很難。有一個框架jxcore聲稱有解決方案,但是,我沒有使用它。

Vert.X IMO可以是一個很好的框架,它很好地利用了所有的cpu核心,提供了N個事件循環。或者,如果您確實需要執行cpu密集型操作並進行響應,則可以使用工作線程池。

2

在遊戲中有太多的工作開箱。節點js會很好,如果你可以減少一些時間來編寫自己的工具。

2

所有這些框架都可以使用。

聲明:我致力於Play框架。

鑑於Play的Scala傳統,即使您使用的是Java,我們也提供Promises,以便您可以推理異步調用的流程,而不會遭受所謂的「回調 - 地獄」。你也許想考慮使用Node的諾言...我相信它們是可用的。我認爲Vert.x可能也提供了一些東西。我不確定,但我不相信Node和vert.x提供了開箱即用的承諾。

您可能會發現此頁面有用:http://www.playframework.com/documentation/2.2.x/ScalaWS

0

您可以使用vertx與RxJava模塊(https://github.com/vert-x/mod-rxvertx)。無論如何,你可以結合你的異步結果。 rxvertx模塊支持EventBus,HttpServer,HttpClient,NetServer,NetClient和Timer的包裝器。