баллы за выполнение тестов производительности в приложении - PullRequest
0 голосов
/ 13 июня 2011

Какими могут быть точки при выполнении теста производительности приложения в Java, которое использует Hibenate в качестве ORM Tool и Oracle 11G в качестве базы данных.

Я также думаю о тестировании приложения.Так что за что мне делать.

Спасибо

Ответы [ 5 ]

1 голос
/ 13 июня 2011

Не уверен, в какой степени ваше приложение «использует Oracle 11G в качестве базы данных» или даже какую среду вы используете (я полагаю, типичный oltp), но со стороны Oracle вы можете сделать несколько вещей (и многие другие):

  1. С точки зрения общей базы данных, посмотрите на AWR ( Автоматический репозиторий рабочей нагрузки , ранее statspack).Я считаю, что это также встроено в Enterprise Manager.
  2. SQL Trace + tkprof .
  3. При использовании любого pl / sql, DBMS_HPROF (Иерархический профилировщик).
  4. При использовании любого pl / sql, регистрировать важные действия для регистрации таблиц (через автономные транзакции),запись временных отметок каждой записи, предпринятых действий и т. д. Сверните свои собственные или используйте существующую структуру (их там несколько).Просто убедитесь, что он гибкий (может изменить уровень выходного сигнала).
1 голос
/ 13 июня 2011

Первое, с чего начать, - это согласовать приемлемые показатели.Без этого соглашения все остальное преждевременно.

Различные типы приложений будут иметь разные болевые точки.Сочетание чтения и записи, одновременные обновления (особенно по тем же данным - например, продажа билетов на концерты или места в самолете), объемы данных.

1 голос
/ 13 июня 2011

Ключевые вещи:

1) что касается практического тестирования приложения с использованием реальных сценариев использования - на практике это может быть довольно сложно - я использовал для этого скрипты Perl на основе www :: mechanize и http :: Recorder 1004 * в прошлом.

2) сбой этого ab или jmeter

3) записать как можно больше (вы не упоминаете, какой веб-сервер вы используете - если его Apache, добавьте% D в журналы)

4) убедитесь, что вы насыщаете систему - вы хотите убедиться, что вы получаете некоторые крупные сборки мусора (или докажите, что он гомеостатический - что очень редко встречается в Java-программе)

5) анализировать веб-сервер и журналы gc.

0 голосов
/ 13 июня 2011

Не уверен, что использование других технологий (например, Hibernate в вашем случае) изменит способ выполнения теста производительности приложения.

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

Если сделать show_sql true, это определенно поможет в рассмотрении запросов и их дальнейшем анализе, но может не помочь в общем тестировании производительности вашего приложения.

Посмотрите на следующий пост инструмент для тестирования Java для инструментов для тестирования.

Надеюсь, это поможет.

0 голосов
/ 13 июня 2011

Иметь в журнале Hibernate весь выполненный SQL.

Проверьте эту ссылку на свойства конфигурации и установите для hibernate.show_sql значение true.Как только вы увидите, что выполняется, проверьте любые необычные операторы и запишите их, если вы подозреваете, что они медленнее, чем ожидалось.

После проверки их плана выполнения и настройки для их большей оптимизации поможет ваше приложение и ваша база данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...