2014-06-18 76 views
0

有關將Netty 3與JCA資源適配器集成的問題已經提出。 solution非常簡單:編寫一個包裝JCA WorkManager的自定義Executor,並將其傳遞給NioServerSocketChannelFactory構造函數。但是,線程似乎在Netty 4中被大量重構,並且這種方法不起作用(沒有NioServerSocketChannelFactory類,因此開始)。有一個選項可以提供自己的ThreadFactory,但很顯然,這對於JCA來說不夠好,因爲只有WorkManager被公開,而不是線程,因此不再有簡單的外觀。Netty 4和JCA WorkManager集成

所以我覺得我卡住了。即使沒有大量的代碼被寫入,我試圖做甚麼?

編輯:最後我問自己爲什麼要製作資源適配器。相反,我只是使用JMS隊列(入站和出站)作爲我們的EE應用程序和使用netty的獨立服務器之間的集成點,並且工作正常。

回答

0

也許有點晚了。 但我也在資源適配器中集成了netty。

在我的代碼,當我找到一個消息被傳遞到我直接啓動,執行或直接在WorkManager中的InboundChannelHandler調度工作中的應用。 國際海事組織與netty 4不需要任何單獨的線程。 Netty已經完成了這項工作,實現只需將工作從入站渠道處理程序傳遞給WorkManager。

+0

我認爲你是對的;只有與應用程序通信的線程必須由AS管理。在盒子外面思考很好。 不過,我還有過去的設計決策,實際上我用更加靈活和強大的方法,我選擇了(見EDIT)非常高興。如果我的AS應用程序崩潰,獨立的服務器仍然能夠與設備進行通訊,併發送消息給JMS服務器。儘管如此,謝謝你的迴應。 –