2014-04-11 267 views
0

如何在Play框架中實現服務器到服務器通信?Play2服務器到服務器通信

我必須發送大量的數據,很頻繁,我正在尋找像websockets但在服務器之間的東西。 我可以使用簡單的套接字,但我的數據是JSON。是否有類似於websockets的套接字的包裝?

我使用play 2.2和scala。

+0

什麼樣的服務器是那些? – Carsten

+0

他們正在爲某些HTTP(JSON)請求提供JSON數據。您可以通過websockets連接到服務器以獲取大量數據,並且這些數據位於另一個播放服務器上,這就是爲什麼我在它們之間實現通信。這是一種流(非常頻繁)的JSON數據。 –

回答

2

Akka遠程處理如何?演員模型將很適合Play架構,並且將是在接收端處理未經請求的消息的好方法。

+0

Akka遠程處理看起來很不錯,但與JSON相比,性能如何與字符串反序列化以及通過簡單套接字發送相比如何呢?我必須非常頻繁地發送這些數據,例如在一個連接中使用100個JSON/s,並且我可以有多個連接。 –

+0

我不認爲Akka開銷會很大,但Akka的重點更多的是可擴展性。根據您的其他評論,也許分佈式緩存(例如EHCache)將符合您的要求 –

1

我建議你在Akka link中使用ZeroMQ實現。遠程解決方案是很好的選擇。唯一的缺點是它依賴於ZeroMQ native,所以你必須安裝ZeroMQ庫。但它效果很好。特別是你不必實現你自己的Pub-Sub模式。