我對Akka相對較新& Scala,但我想使用Akka作爲通用框架將各種Web工具和cli命令的信息彙集在一起。使用Scala Akka框架阻止CLI調用
我明白在Actor模型中,非常希望不讓演員阻止。而對於http請求,有異步http客戶端(如Spray),這意味着我可以在Actor框架內異步處理請求。
但是,我不確定什麼是將演員與現有的阻止API調用(如scala ProcessBuilder/ProcessIO庫)結合使用時的最佳方法。就發行這些CLI命令而言,我期望相對少量的併發性,例如可能在12核心機器上最多執行10個併發CLI調用。
讓單個角色管理這些CLI命令,將實際工作轉移到根據需要創建的Futures是否更好?或者只是維護一組由PinnedDispatcher支持的獨立參與者會更簡潔?或者是其他東西?