2010-12-02 2 views
1

У меня есть код, который запускается много (для каждого запроса веб-службы).Как реализовать singleton для использования на серверах приложений, singleton OK?

Код вызывается из веб-службы, которая размещается сервером приложений (Websphere 7).

Я заметил, Websphere использует много классов, которые предположительно являются одноэлементные объекты (такие как BOXMLSerializer (для де/сериализации бизнес-объектов) или BOFactory.

Я хочу, чтобы сэкономить на стоимости создания нового объекта для каждого запрос веб-сервис, например.

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

ли Websphere предоставляет любую помощь такого рода вещи?

ответ

1

Да, вы можете сделать обычный синглтон. Однако из-за того, как работает загрузчик классов, это может быть не совсем точно для ваших приложений, если у вас есть несколько приложений, требующих аналогичной службы. По этой причине вы, вероятно, должны создать Singleton Session Bean.

2

erloewe правильный, обычный синглтон может работать. Что касается Singleton Session Bean, хотя - это часть спецификации J2EE6 и недоступна в WAS7 (так как это только J2EE5). Однако это будет часть WAS8.

Смежные вопросы