JBOSS 6.1 работает EJB 3.1 проблемы с производительностью при одновременном вызове bean-компонентов с состоянием

После переноса большого серверного приложения из JBOSS 4.0.5 с EJB 3.0 на JBOSS 6.1.0 с EJB 3.1 я заметил постоянное увеличение времени отклика при одновременном (более 100) доступе к бинам с состоянием и вызову метода.

В некоторых тестах среднее время отклика на вызовы методов в старой среде составляло около нескольких миллисекунд, в то время как в более новых версиях средние значения равны сотням в идентичной системе, где все работает локально, поэтому проблемы с сетью исключаются. (В основном сеттеры) (поиск SFB выполняется локально)

Как я могу исследовать это дальше, что может быть причиной этого?

1 ответ

Просто мои мысли об этом

жизненный цикл Stateful Session Bean

http://docs.oracle.com/javaee/6/tutorial/doc/giplj.html

В Jboss Stateful Session бин переводится из состояния готовности в пассивное состояние, если кэш переполнен или бин слишком стар.

http://docs.jboss.org/ejb3/docs/reference/1.0.7/html/SessionBean_and_MDB_configuration.html

Я думаю, что "полный кеш" может быть одной из причин задержки ответа, так как это приведет к пассивации сессионных компонентов с состоянием. Один из способов подтвердить это - добавить журнал отладки в функцию обратного вызова PrePassivate в Stateful Session Bean и постепенно подчеркивать приложение, наблюдающее поведение.

Другие вопросы по тегам