|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Добрый день. Наблюдаются проблемы с производительностью, подвисает приложение у юзеров. Используем Interbase 2009. Размер БД - около 3 ГБ. Число коннектов до 50 днём. Ночью около 10. map size - 4096 db cache - 2048 Сервер старенький XEON 2 проц 8 ядер ОЗУ - 4 ГБ. 32 разр диски старенькие В диспетчере задач ibserver.exe - ЦП загружает на 50-80%, Использование памяти - около 100 МБ OnDiskStructure 13.1 Oldest transaction 76824204 Oldest snapshot 76835068 Oldest active 76835068 Next transaction 76929571 Считываются данные транзакцией read commited, read only Запись read-write Буду благодарен за консультации и помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:04 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialexСчитываются данные транзакцией read commited, read only Её следует коммитить как только они считались. А то транзакция, пережившая почти 100 тысяч своих сородичей это ужас вообще. Да и 2048 буферов под кэш - скорее всего издевательство над дисками. Но это уже надо смотреть статистику выполнения конкретных запросов, считать hit ratio. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:17 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialex, раз Interbase 2009 значит супер сервер, а следовательно можно повышать размер кеша. Для начала раз в 10. Что есть map size? Если имелось ввиду page size, то его тоже можно повысить до 8192 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:19 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Hello, Dimitry Sibiryakov! You wrote on 22 мая 2015 г. 11:21:14: Dimitry Sibiryakov> Её следует коммитить как только они считались. А то транзакция, > пережившая почти 100 тысяч своих сородичей это ужас вообще. у него RC+RO Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:21 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Мимопроходящийу него RC+RO У него не Firebird. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:31 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovМимопроходящийу него RC+RO У него не Firebird. Ну да, Interbase, но зачем коммитить RC? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:36 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
sim_84irnialex, раз Interbase 2009 значит супер сервер, а следовательно можно повышать размер кеша. Для начала раз в 10. Что есть map size? Если имелось ввиду page size, то его тоже можно повысить до 8192 Да повысить надо, но как нибудь на выходных вечером, чтобы попросить всех не работает... На производстве круглосуточно используется. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:39 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialex, ещё можно увеличить память под буфер сортировки. Кстати как эти подвисания проявляются? В какой момент? Периодически или постоянно. Если подвисают только определённые запросы то их надо вытащить и разбираться с ними отдельно. Посмотреть план и статистику. Из статистики можно будет сделать вывод какие параметры подкрутить. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:47 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialexзачем коммитить RC? Чтобы двигать счётчики, освобождать ресурсы и позволять мусору собираться. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:51 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovirnialexзачем коммитить RC? Чтобы двигать счётчики, освобождать ресурсы и позволять мусору собираться. Read committed, read only Такая транзакция может работать вечно без отрицательного воздействия на производительность. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:52 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Симонов Денисirnialex, ещё можно увеличить память под буфер сортировки. Кстати как эти подвисания проявляются? В какой момент? Периодически или постоянно. Если подвисают только определённые запросы то их надо вытащить и разбираться с ними отдельно. Посмотреть план и статистику. Из статистики можно будет сделать вывод какие параметры подкрутить. мм а как увеличить память под буфер сортировки?)) проявляются тем, что у половины пользователей зависает программа не постоянно, а бывает отследить, какие запросы виснут, слишком сложно, их слишком много доработок в программе уже не делали несколько месяцев и раньше работало всё отлично... а сейчас стало хуже ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:54 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Hello, Irnialex! You wrote on 22 мая 2015 г. 11:58:24: Irnialex> Read committed, read only Такая транзакция может работать вечно без > отрицательного воздействия на производительность. у FB таки да. а вот как там с этим у древнего IB? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:58 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialexRead committed, read only Такая транзакция может работать вечно без отрицательного воздействия на производительность. Ага, а разрыв в счётчиках тебе ветром надуло, да... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 11:58 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialex, если зависания происходят периодически, то скорее всего срабатывает автосвип. Я не знаю как называется параметр отвечающий за буфер сортировки в IB. В FB - TempCacheLimit. Что тип SortMemSize который по умолчанию всего 64М ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 12:00 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Симонов Денисскорее всего срабатывает автосвип. Да ну? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 12:15 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, ну хотя... kdvИтак, начнем с того, что по умолчанию в созданной базе данных есть параметр Sweep Interval, равный 20000. Как только разница между транзакциями Oldest Snapshot и Oldest (см. gstat -h db.gdb) (в InterBase 7.x и выше - якобы разница между Oldest Active и Oldest) достигнет этого числа, стартует "sweep thread" (на самом деле если посмотреть в tra.c на функцию start_sweeper, то ясно видно что это отдельный коннект (!) который занимается "каким то" sweep. В InterBase 7.x он виден как отдельный коннект с именем "collector" в tmp$attachments). У меня тут вопрос возник. Предположим что разница счётчиков достигла 20000. Свип запустился, но подвинуть счётчики не смог. Когда он в следующий раз запустится? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 12:28 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Так что делать? У кого-то есть советы? да, есть такой collector, всё время активный ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 13:02 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialexТак что делать? У кого-то есть советы? Если всё сказанное в этом топике ты за советы не считаешь, то остаётся только одно: нанять DBA. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 13:38 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
размер кэша поменял коммитить RC не вижу смысла, никто не написал доводов, что это необходимо делать. Сделал принудительно sweep, теперь next tr отличается от oldest на 1-2 всегда. С чем связано было зависание транзакций, не пойму. И почему-то не отработал автосвип. Page size изменю в скором времени. Что ещё стоит сделать? Рекомендации по настройке сервера, железа, приложения(транзакции)? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 13:49 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialex, про размер кеша и память под сортировку тебе сказали ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 15:34 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Мимопроходящийу FB таки да. а вот как там с этим у древнего IB? ты охренел, мягко говоря. RC RO появился у InterBase 6.0, и оттуда он у ФБ и всех других версий ИБ выше 6. Так что у ИБ 2009 RC RO работает абсолютно так же, как у любой версии ФБ, начиная с 1.0. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 18:47 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
irnialexOldest active 76835068 Next transaction 76929571 нужно читать документы на ibase.ru, учиться и т.п. У вас там Oldest Active застряла на 94 тысячи транзакций, так что надежды на RC RO не оправдываются (эти транзакции не в счет). Смотреть нужно IBTM, IBAnalyst, и так далее. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 18:50 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Hello, Kdv! You wrote on 22 мая 2015 г. 18:52:23: Kdv> Так что у ИБ 2009 RC RO работает абсолютно так же, > как у любой версии ФБ, начиная с 1.0.не надо пыли. в FB правили сборку мусора как раз для данного случая. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 18:52 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Мимопроходящийне надо пыли. в FB правили сборку мусора как раз для данного случая. в этом плане в ФБ НИЧЕГО не правили. баг с недосборкой мусора в SS - это из другой оперы, и да, правили в 2.1. Но RC RO тут вообще никаким боком. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 23:15 |
|
Помогите улучшить производительность
|
|||
---|---|---|---|
#18+
Мимопроходящий, еще раз - RC RO, не влияющий на "накопление мусора", был введен в InterBase 6.0, еще Анна Харрисон об этом писала, и этот RC RO как был, так и поехал во все последующие версии ФБ и ИБ. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2015, 23:17 |
|
|
start [/forum/topic.php?fid=40&fpage=76&tid=1562835]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 152ms |
0 / 0 |