Мы недавно обновили версию OE 11.3. В одном конкретном месте приложение и база данных работают медленно. Но мы не сталкивались с проблемами производительности в приложении или в базах данных. Я проверил несколько параметров в promon как буферы, количество буферов базы данных, параметр -spin.Ошибка производительности базы данных Progress?
буфера хитов -97%
количество Databse буферов - 50000
-spin berfore timeout- 2000, который выглядит очень низким.
можно ли найти проблему, почему база данных и приложение работают очень медленно только в этом месте?
Мы не сталкиваемся с какой-либо проблемой производительности в других местах.
Увеличивает ли значение -spin увеличение производительности в этом месте?
Местоположение относится к географическому местоположению.
ответ
Вы не предоставляют очень много информации:
А) О своих намерениях. Вы просто хотите, чтобы все было «быстрее»? Или есть другие потребности - например, на серверах не хватает памяти/при большой нагрузке и т. Д.
B) О вашей системе. Сколько пользователей, баз данных, таблиц, индексов и т. Д.
C) Когда вы говорите местоположение - что вы на самом деле имеете в виду? Это конкретная программа, конкретный запрос/поиск или конкретное (географическое) местоположение?
Buffer хиты
97% буфера не говорит, что много по себе:
- Есть 1 000 записей или поиски 1 000 000 000?
- «Первичные буферы хитов» ничего не говорит о одиночных таблицах. Возможно, все «пропуски буфера» исходят из одной таблицы (или очень немногих).
Простое объяснение просмотра буфера:
запись чтения в буфере (память) является «хит» запись чтения с диска не является.
1 000 record lookups with 97% buffer hits means:
970 records are read from buffer (memory). (0.97 x 1 000)
30 records are read from disk. (0.03 x 1 000)
Increasing to 99% buffer hits means you will remove:
20 disc reads. (0.02 x 1 000)
1 000 000 000 record lookups with 97% buffer hits means:
970 000 000 records are read from buffer (memory).
30 000 000 are read from disk.
Increasing to 99% buffer hits means you will remove:
20 000 000 disc reads.
В первом случае вы ничего не заметите, скорее всего, при переходе от 97 до 99%. Во втором случае нагрузка на диски значительно уменьшится.
Заключение
Увеличение -B может повлиять на производительность, а также хиты буфера. Изменение -spin также может повлиять на вашу производительность за счет использования большего количества вашего процессора. Все зависит от того, как работает ваша система. Лучший способ - попробовать (с помощью тестовой настройки).
Первое, что вам действительно нужно сделать, это посмотреть на свое приложение и наиболее запущенные запросы - использовать оптимальные индексы? Если нет, вы, скорее всего, настроитесь очень сильно, не получая больших различий. Читайте об использовании индекса, XREF-компиляции и разных VST-таблицах, которые вы можете использовать для проверки производительности индекса и т. Д.
Это хорошее место, чтобы начать:
Top 10 (really more) Performance Tuning Tips For The Progress Database
Кроме того, вы можете попробовать превосходное программное обеспечение бесплатно PROTOP для и получить guesstimations для -B:
Этот вопрос очень расплывчатый. Вам было бы гораздо лучше спросить об этом на форуме, где могут произойти некоторые «назад и вперед», и где вы можете руководствоваться более полным ответом.
Вы можете попробовать:
Эти форумы все посвятили DBA сосредоточены области, где многие люди обычно скинуться, чтобы помочь.
Мы обнаружили, что добавление (на Линукс серверов) -T /dev/shm
сделал большой прирост производительности
/oe116> cat startup.pf -T /dev/shm
Вы также можете добавить это в ваших common.pf
файлов
Вы можете увидеть до и после это с помощью (с запуском базы данных) lsof | grep удалить
и вы должны увидеть много мест на своем жестком диске isk после того, как вы добавите его и перезапустите свою базу данных`, он будет использовать общую память