2010-02-24 2 views
3

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

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

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

Благодаря

ответ

3

Вы должны проверить ваш websphere manual для того, как настроить пул соединений.

Here является введение Inculding образцы кода

+0

Спасибо за ссылки, у нас есть пул соединений, но я не знаю, как измерить на стороне DB2. – user271858

1

В моем опыте, что вы видите, это довольно часто. Вопрос в том, что именно происходит с соединением DB2 ...

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

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

Удачи вам!

+0

Я думаю, что пришло время поговорить с администратором баз данных. – user271858

2

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

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

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

+0

Спасибо, применимы ли они также к DB2 DB2? – user271858

0
  • Пулы соединений
  • Кэширование
  • АБД
Смежные вопросы