目前的高性能TP Monitor如 TUXEDO CICS全部是基于 C/多進程開發而成
國內市場被BEA/IBM高度壟斷,可能也就 東方通TongEASY的能虎口奪食。
從TP Monitor的在金融業的應用經驗來看,TP Monitor主要作用是:
1 提供一個高性能、高穩定的通訊框架:(如銀行總分互聯、應用之間互聯)
2 支持大并發的交易處理平臺(在線交易實時處理,但一般不作為事務管理器,因為全局事務代價過高,主要用數據庫自身事務機制)。
3 支持軟件負載均衡,支持水平擴展(如:TUXEDO MP)。
開源App Server如Jboss/Jonas 全部采用純Java實現,性能是個問題,跟TUXEDO/CICS相比。
假設我們要自行實現一個可用的TP Monitor,必須要解決上述幾點。
從Java的性能來看,它的內部代碼執行效率不低,主要弱在:
1 socket通訊效率低
2 ipc機制不支持
3 數據庫訪問效率低(實際的交易實現效率低,不管用EJB還是POJO)
目前有考慮
1 高性能的通訊框架,必須采用C代碼實現。Java做不到Zero Copy,并且JNI在Java和本地C代碼之間復制內存代價也很高。
2 大并發的處理平臺,這個是Java的優勢所在,Java對于同步、并發的實現,寫起來簡單
3 IPC支持(SystemV消息隊列、共享內存、信號燈),標準 Java 庫缺乏,但是可以通過JNI實現,實現策略可以參考SWT的實現策略。
4 用戶SERVICE實現(數據庫訪問),采用C實現,充分利用高效的數據庫本地接口。
國內市場被BEA/IBM高度壟斷,可能也就 東方通TongEASY的能虎口奪食。
從TP Monitor的在金融業的應用經驗來看,TP Monitor主要作用是:
1 提供一個高性能、高穩定的通訊框架:(如銀行總分互聯、應用之間互聯)
2 支持大并發的交易處理平臺(在線交易實時處理,但一般不作為事務管理器,因為全局事務代價過高,主要用數據庫自身事務機制)。
3 支持軟件負載均衡,支持水平擴展(如:TUXEDO MP)。
開源App Server如Jboss/Jonas 全部采用純Java實現,性能是個問題,跟TUXEDO/CICS相比。
假設我們要自行實現一個可用的TP Monitor,必須要解決上述幾點。
從Java的性能來看,它的內部代碼執行效率不低,主要弱在:
1 socket通訊效率低
2 ipc機制不支持
3 數據庫訪問效率低(實際的交易實現效率低,不管用EJB還是POJO)
目前有考慮
1 高性能的通訊框架,必須采用C代碼實現。Java做不到Zero Copy,并且JNI在Java和本地C代碼之間復制內存代價也很高。
2 大并發的處理平臺,這個是Java的優勢所在,Java對于同步、并發的實現,寫起來簡單
3 IPC支持(SystemV消息隊列、共享內存、信號燈),標準 Java 庫缺乏,但是可以通過JNI實現,實現策略可以參考SWT的實現策略。
4 用戶SERVICE實現(數據庫訪問),采用C實現,充分利用高效的數據庫本地接口。