Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
20.11.2007, 08:03
|
|||
|---|---|---|---|
|
|||
Архитектура EJB |
|||
|
#18+
Подскажите, пожалуйста, готовый шаблон такой задачи: приложение использует EJB, который реализует логику базы данных (вызов sql запросов к БД, обработка результатов). Вызовы методов EJB необходимо макисимально оптимизировать в скорости. Приложение ориентировано на многопользовательский режим. Какого типа должен быть EJB? (stateless или statefull). Где должно хранится соединение с БД, когда оно должно закрываться и открываться? Стоит ли использоватеь PreparedStatement для ускорения выполнения запросов и как? Как обеспечить многопоточность, разграничение одновременного вызова метода? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.11.2007, 09:20
|
|||
|---|---|---|---|
|
|||
Архитектура EJB |
|||
|
#18+
Вообще-то вопрос не для этой группы. Однозначно читать документацию по архитектуре J2EE. 1. По возможности нужно использовать Stateless-компоненты. 2. Для работы с СУБД нужно средствами сервера приложений организовать пул соединений, а в приложении получать соединение из пула, выполнять запрос/запросы и возвращать соединение в пул(закрывая соединение). 3. Желательно пользоваться PreparedStatement, т.к. динамические запросы кешируются как самим сервером СУБД, так и сервером приложений. Но чтобы взялся запрос из кеша он должен посимвольно совпадать с уже готовым. Если в запрос явно подставлены значения параметров и они меняются при каждом новом запросе, то с т.з. СУБД это будут разные запросы. Если же использовать PreparedStatement с подстановочными символами для значений, то текст запроса при разных параметрах будет совпадать. При этому нужно не забывать смотреть на план выполнения запроса. В зависимости от текста запроса может быстрее выполняться запрос с явно подставленными значениями параметров. 4. Многопоточность обеспечивает сервер приложений, но разработчик должен следовать правилам написания классов. Например для сервлетов один экземпляр сервлета может обслуживать N-запросов, поэтому в классе сервлета нельзя использовать private-переменные. Все это есть в спецификациях J2EE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=43&tablet=1&tid=1604197]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
74ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
20ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 381ms |

| 0 / 0 |
