我正在考慮以下用例使用的技術:尋找一個無阻塞的方式來處理某一事件路由
系統是事件驅動的 存在流量(其中大部分是沒有叉子除了錯誤處理) 流本身應該是同步的,但無阻塞
我迄今爲止的可能性是:
- 純java - 這使代碼不太清楚,因爲我有築巢在彼此內部 回調,並有寫都要親力親爲
- Apache的駱駝 - 使用駱駝的路線 即:
from(URI) .transform(creatUserExpression) //prepare msg to send to db .inOut(DB.URI) //send to db .transform(UserCreatedExpression) //prepare msg to send to next step .inout(OtherService.URI) .end();
這看起來像一個很好的解決方案,但駱駝適合處理我的所有業務邏輯 - 事件的所有流程? 駱駝主要用於服務之間的整合,所以我們不知道這是否是正確的使用它的商業邏輯
java的RX - 看起來像一個可能的選擇,仍然不夠了解,生產是否準備好了? 當前版本是0.20.7 - 還不是1.X版本
akka - 試圖使用它的流量 - 但爲了確保流量只有一種方式,我們需要使用FSM導致代碼過於複雜,我們決定不這麼做
任何其他建議可以理解
3.上個星期以來RxJava的1.0.0版本已經發布。 (並且已經在Netflix,SoundClound Android App中使用,...) 順便說一下,如果您無法在Rx和/或Camel之間做出決定,則存在一個RxJava Camel端點(我沒有看過它) – dwursteisen 2014-11-25 15:24:26
我現在看到他們更改了maven倉庫中的名稱 - 它現在在io.reactivex/rxjava下,而不是com.netflix.rxjava»rxjava-core(仍然是0.20.7) – Elyran 2014-11-25 16:09:41