Производительность jdbc DB2

выполняя профилирование приложения Java, работающего под управлением websphere 7 и DB2, мы видим, что большую часть времени мы проводим в пакете com.ibm.ws.rsadapter.jdbc, обрабатывающем подключения к базе данных и из нее.

  1. Как мы можем настроить нашу производительность jdbc?

  2. Какие другие стратегии существуют, когда производительность базы данных является узким местом?

Спасибо


person user271858    schedule 24.02.2010    source источник


Ответы (4)


Вы должны проверить свое руководство по websphere, чтобы узнать, как настроить соединение. бассейн.

Обновление 2021

здесь введение с примерами кода

Обновление 2021

person stacker    schedule 24.02.2010
comment
Спасибо за ссылки, у нас есть пул соединений, но я не знаю, как его измерить на стороне DB2. - person user271858; 25.02.2010
comment
Обе ссылки мертвы :( - person t3b4n; 21.04.2021

Одной из причин медленного подключения является деактивированная база данных, которая не открывает свои файлы и не выделяет свои буферы памяти и кучи до тех пор, пока первое приложение не попытается подключиться к ней. Попросите вашего администратора баз данных подтвердить, что база данных активна, прежде чем запускать тесты. Команда LIST ACTIVE DATABASES (выполняемая с локального сервера DB2 или через удаленное подключение) должна отображать вашу базу данных в своих выходных данных. Если база данных не активирована, попросите вашего администратора баз данных активировать ее явным образом с помощью команды ACTIVATE DATABASE yourDBname. Это гарантирует, что файлы базы данных и структуры памяти останутся доступными, даже когда последний пользователь отключится от базы данных.

Используйте GET MONITOR SWITCHES, чтобы убедиться, что все переключатели вашего монитора включены для вашей базы данных, иначе вы упустите некоторые потенциально важные детали производительности. Дополнительные затраты на отслеживание данных, связанных с этими переключателями монитора, минимальны, а ценность данных о производительности значительна.

Если база данных всегда активна, а работа по-прежнему кажется медленной, существуют подробные трассировки DB2, называемые мониторами событий, которые регистрируют все, с чем сталкиваются, в файл, канал или таблицу DB2. Монитор событий операторов — это тот, к которому я довольно часто обращаюсь для анализа эффективности операторов SQL и гигиены UOW. Я также предпочитаю дополнительно записывать записи монитора событий в таблицу, а не в файл, поэтому я могу использовать SQL для поиска данных по всевозможным шаблонам. Утилита db2evtbl упрощает определение нужного монитора событий и создание таблиц для хранения его выходных данных. Команда SET EVENT MONITOR STATE запускает и останавливает созданный вами монитор событий.

person Fred Sobotka    schedule 25.02.2010
comment
Спасибо, они применимы и к iseries DB2? - person user271858; 25.02.2010

По моему опыту, то, что вы видите, довольно распространено. Вопрос, который нужно задать, заключается в том, что именно делает соединение с DB2...

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

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

Удачи!

person mransley    schedule 24.02.2010

  • Пул соединений
  • Кэширование
  • администраторы баз данных
person Ken Liu    schedule 25.02.2010