2010-05-15 50 views
3

問題環境與JavaEE,彈簧ETL,Esper或Drools?

我正在開發一個系統,可以啓動和停止傳入消息的任意TCP(或其他)偵聽器。可能需要驗證這些消息。這些消息需要被解析並存儲在其他一些實體中。這些實體模擬它們存儲的字段。

因此,例如,如果我有property1,可以有兩個文本字段FillLevel1和FillLevel2,我可以接收具有兩個填寫文本爲F1 = 100指定的電平上的TCP消息; F2 = 90

後來我所能當我開始接收消息F1 = xx; F2 = xx; F3 = xx時,添加另一個字段FillLevel3。但這是系統建模人員的一個有意識的決定。

我的問題是你認爲最好用什麼解析和存儲消息。 ETL(使用Pantaho,在其他系統中使用),您可以在其中存儲原始消息並使用任務執行程序逐個消耗它們,並根據規則存儲轉換後的消息。

可以使用Espr或Drools來做同樣的事情,存儲規則並使用計時器執行它們,但我不確定在制定規則時您可以獲得多大的動態性(它們必須由最終用戶在運行系統中完成並且最好以最用戶友好的方式,即沒有腳本或代碼,僅GUI)

最終用戶應該能夠改變分析規則。最終用戶也可能希望更改存檔數據(例如,在上面的示例中,如果添加了新的FillLevel值,則希望將FillLevel = -99放入先前的值中以生成數據一致)。

請問一下解釋,我覺得我需要修改一下這個問題。

謝謝

回答

1

@geoaxis太晚了,但我會嘗試。當需求變化說F4添加到系統中所有你期望改變 1)規則2)實體3)數據庫表4).. anythig其他?

想知道你是否找到了解決方案。

1

好的Esper是一個很棒的CEP引擎,但drools有它自己的實現Drools Fusion,它與jBpm很好地集成在一起。那將是一個不錯的選擇。