1
我有一個web服務正在做一些數據庫查詢(到MongoDB),然後對這些數據庫查詢返回的記錄進行不平凡的處理。每個Web請求都需要運行大約15-45個請求,這會導致不可接受的頁面響應時間,因爲每個查詢+處理大約需要20ms。高速緩存將無法工作,因爲高速緩存未命中率會很高,數據需要儘可能新。Scala/Java中的Web請求中的並行化/線程?
我已經計劃使用Scala + Akka和actors來並行執行和處理查詢的類,但我知道在servlet容器內創建線程是不鼓勵的。在Scala的Web請求中進行線程化/並行化的推薦方式是什麼?
我沒有回答你的問題,因爲如果你不能有多個線程,我不知道你如何平行化任何東西。我會說的是使用Akka Actor可能不是一個好主意。阿卡期貨將成爲這裏走的路。 –
@Derek我認爲這是我的問題,可以在Scala + Akka的Web請求中的代碼中使用Actor嗎?我想要有多個線程,將查詢和處理的類封裝到Actor中。我正在考慮期貨,但也想知道我是否可以使用演員。 –
我已經用Mist成功編寫了高度可靠和可伸縮的應用程序 - Akka中的HTTP附加程序,它將Actor調整器放在您的業務邏輯和Web容器之間。所以我不明白爲什麼它有任何問題。 –