3
我已經創建了一個在GlassFish Opensource Edition上運行的測試EJB3應用程序。Glassfish的慢「查找」時間
我正在通過同一主機連接到GlassFish(客戶端和應用程序服務器都在'localhost'上運行)。
我使用InitialContext.lookup()獲取一個遠程(有狀態)對象,然後與它交互,就像它是一個普通的Java對象。
唯一的問題是這樣的單呼,這需要15秒:
FooRemoteService foors = (FooRemoteService)
context.lookup("java:global/FooApp/FooService!test.FooRemoteService");
我明白,必須有某種「握手」和「初始化」的,但這是這麼混賬慢。
交互的其餘部分(幾個遠程調用與許多序列化對象交換)只需要大約0.1秒!
我怎樣才能找出它需要這麼長時間的原因?
那麼它在第一次查找時就會實例化FooRemoteService ......它在最後的任何密集處理? – Torious 2012-04-15 16:25:15
一點都不......如果我用本地虛擬機「新」它,它需要一些毫秒 – gd1 2012-04-15 16:40:06