|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Здравствуйте господа. Столкнулся с проблемой, которую не могу решить. Перевел базу с FB 2.5 (SuperClassic) на FB 3.0.4 (SuperServer). База: ~35Гб, Кол-во пользователей: ~200, Сервер: 2 х E5-2630, 32 Гб, win server 2012 (64) FB 3.0.4.33054 (64), конфигурационный файл - по умолчанию, автоматическая сборка мусора отключена, ежедневный (-ночный) backup/restore. До перевода средняя загрузка процессоров составляла порядка 10-20% После перевода на FB3 и установки SuperServer загруженность увеличилась до 30-40% с периодическими (раз в несколько часов) выходами на 90-100% загрузку. При которой пользователи вообще работать не могут, приходилось перезапускать FB. Если переключить с FB 3.0.4 (SuperServer) на FB 3.0.4 (SuperClassic) - все проблемы снимаются. Загрузка те же 10% что были на FB 2.5. Никаких зависаний. Буду благодарен за совет в какую сторону рыть. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 13:52 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovFB 3.0.4.33054 (64), конфигурационный файл - по умолчанию, в этом случае SS мягко говоря не сильно полезен. Страничный кеш по умолчанию никуда не годится ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 13:57 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovв какую сторону рыть. В сторону рынка труда: нанять сисадмина и DBA. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 14:02 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Это да, мысль хорошая. Но в данной истории все таки интересно почему SuperClassic (c настройками по-умолчанию) работает, SuperServer (опять же по-умолчанию) зовет сисадмина :) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 14:07 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovSuperServer (опять же по-умолчанию) зовет сисадминаСм. первый ответ в топике, если там непонятно, то см второй ответ. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 14:15 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, вообще-то на базе такого размера оставлять дефолтный конфиг это верх не профессионализма, не зависимо от архитектуры. Прежде чем бездумно менять архитектуры неплохо бы почитать чем они отличаются. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 14:25 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денис, Полностью с Вами согласен, Денис. Понятно, что параметры по умолчанию неоптимальны. Просто мне казалось, что значения по-умолчанию могут приводить к снижению эффективности. Но не к полной же неработоспособности. И опять же почему "по-умолчанию" у SS - это 100% загрузка именно процов. А "по-умолчанию" у SC - полностью работоспособная система (возможно не оптимальная). Пока роюсь в документации, но ответа не нашел. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 14:42 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
что происходит в момент 100% загрузки? трассировка надеюсь включена? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 14:49 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, чего там рыться то. В SS страничный кеш общий и он должен быть большим. В CS, SC раздельный, его больше 2048 страниц ставить нельзя. Конфиг по умолчанию рассчитан на очень маленькие БД. И если в SC, CS маленький кеш особой рояли не играет (опора на файловый кеш), то в SS даже очень влияет. для супера начни с Код: plaintext 1.
ahmed sultanovавтоматическая сборка мусора отключена что правда, а может не сборка мусора, а свип? ahmed sultanovежедневный (-ночный) backup/restore. зачем? Правильно построенным системам это не требуется. В смысле бекап нужен, рестор нет. ahmed sultanovКол-во пользователей: ~200 при таком количестве пользователей, даже в классике и суперклассике уже требуется дополнительная настройка. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 14:55 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, небось у приложений с управлением транзакциями все настолько плохо, что принудительная сборка мусора на суперклассике работает, а фоновая на супере - тормозит. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 17:54 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
kdv, Честно признаться, приложение на BDE. И с явным управлением транзакциями там ээээ... не очень. Простите мое невежество, я еще только начинаю разбираться во всем этом: а что у SuperServer-a сборка мусора работает как то по другому чем у SuperClassic-а? Просто у нас sweep interval установлен в 0 и сборка мусора выполняется один раз в день (ночью) - во всяком случае я так это понимал. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 19:17 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, не путай сборку мусора и свип. В супере помимо кооперативной сборки мусора работает ещё и фоновая. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 19:29 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денисчего там рыться то. В SS страничный кеш общий и он должен быть большим. В CS, SC раздельный, его больше 2048 страниц ставить нельзя. Для меня данный вопрос также актуальный. По умолчанию используется файловый кэш ОС, поэтому, если ОЗУ достаточно, ОС может всю БД держать в ОЗУ. В таком случае, почему для SS нужно выделять больше страниц? Получается, обращение к страницам БД, даже если они находятся в кэше ОС - это очень затратная операция? Если выделить слишком много страниц, то возникнет ситуация, когда одни и те же страницы БД будут находится в ОЗУ дважды (и в кэше ОС и в памяти FB), а другие страницы останутся не загруженными в ОЗУ. В идеале, конечно, нужно отключать использование кэша ОС и ставить достаточное количество страниц БД. Но как его правильно рассчитать, если размер БД постоянно увеличивается? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 09:06 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
DmSerПолучается, обращение к страницам БД, даже если они находятся в кэше ОС - это очень затратная операция? не очень, а более. Если нужной страницы нет в страничном кеше, но она есть в файловом, она всё равно считается в страничный. То есть страничный кеш будет задействован в любом случае. Это дороже чем просо логическое чтение (фетч). DmSerВ идеале, конечно, нужно отключать использование кэша ОС и ставить достаточное количество страниц БД. Но как его правильно рассчитать, если размер БД постоянно увеличивается? Для очень больших БД и не надо чтобы она вся влезала в кеш, достаточно выделить такой размер кеша, чтобы в него помещалась активная часть БД. Как определить сколько это хз. Экспериментировать надо, ну или наобум, простым дележом оперативы на несколько частей, и так чтобы ни кого не обделить. На примере автора 32 Гб. Отдаём примерно половину памяти под страничный кеш (12 Гб), ещё 2-3 Гига под сортировку. Остальное под файловый кеш, ОСь, кеш метаданных и другую приблуду. DmSerВ идеале, конечно, нужно отключать использование кэша ОС и ставить достаточное количество страниц БД. Это можно сделать, но надо учитывать что при этом сильно замедлится работа с БД с холодным кешем, с разогретым разницы не будет. Упреждающее чтение в кеш Firebird пока не реализовано. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 11:28 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Достаточность кеша обычно проверяют соотношением cache miss\cache hit. У нас cache miss = read, cache hit = fetch. Хорошим соотношением для FB является read\fetch < 0.005, но это не высечено в камне. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 11:51 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
DmSerЕсли выделить слишком много страниц, то возникнет ситуация, когда одни и те же страницы БД будут находится в ОЗУ дважды (и в кэше ОС и в памяти FB)Насколько я понимаю устройство страничных кэшей - вы заблуждаетесь. Дублирования не будет: одни и те же страницы физической памяти будут отображены и в адресное пространство FB-процесса и в адресное пространство системного кэша. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 12:31 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, ошибаешься ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 13:17 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovЧестно признаться, приложение на BDE. И с явным управлением транзакциями там ээээ... не очень. В BDE с явным управлением ими вообще не было ни каких, на сколько помню, проблем. мое невежество Вот на это, пока что, однако, похоже.)) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 13:40 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Vlad F, это смотря с какой стороны посмотреть. Транзакция возможна только одна, подтвердил её и все датасеты позакрывались, а COMMIT RETAIN это уже не совсем нормальное управление транзакциями. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 13:54 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов ДенисТранзакция возможна только одна, подтвердил её и все датасеты позакрывались Это в IBX,а не в BDE. Там линки создавали локальные таблицы для кэша резалт-сетов. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 14:05 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
hvladошибаешьсяА разве всяческие mmap-ы не позволяют отображать одну и ту же страницу в адресное пространство разных процессов? Или "Восток - дело тонкое"? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 15:53 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, страничный кеш Firebird не использует mmap и работает независимо от кеша FS. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 16:38 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов ДенисVlad F, это смотря с какой стороны посмотреть. Транзакция возможна только одна, подтвердил её и все датасеты позакрывались, а COMMIT RETAIN это уже не совсем нормальное управление транзакциями. Мы про явное управление ими ли где? На что тут ещё можно двояко смотреть, когда в наличии были .StartTransaction, .Commit и .Rollback? Потом со всем этим сообщество благополучно перешло на IBX, где, кстати, было все ровно то же самое, разве что одновременных транзакций стало возможно несколько. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2019, 17:10 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Господа, спасибо за рекомендации. Проверяю все что можно. К сожалению в данный момент вариант с заменой настроек по умолчанию на другие не помогает. Установил в конфиге: ServerMode = Super DefaultDbCachePages = 50000 TempBlockSize = 2M TempCacheLimit = 2G Результат тот же: Через примерно час работы выход всех процессоров на загрузку от 50% и вверх до упора. Все тормозят, новые пользователи не подключаются. До перезапуска FB. Переключение на СуперКлассик - полет нормальный, все работает. Боюсь, что все таки идея о том, что конфиг по-умолчанию для СуперСервера делает большую базу полностью неработоспособной - это неправильная идея. И в какой то степени оскорбительная для команды разработчиков FB. Здесь дело в чем то другом. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 11:08 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, кто сказал что делает неработоспособной? Я говорил что использование SS в конфигурации по умолчанию как минимум бесполезно. А про загрузку процессоров сам смотри что именно у тебя их грузит. Конечно возможно в коде FB есть какой-то баг который вызывает гонки, но тогда почему он не проявляется у других. Делай воспроизводимый тест. Чтобы тебе помогли ты должен предоставить максимум информации о том что происходит у тебя в системе когда она встаёт колом. Может у вас запросы настолько кривые, что такое использование процессоров это нормально. Может UDF/UDR специфические есть? Неплохо бы снять статистику с БД. Предоставить результаты fb_lock_print ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 11:33 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денис, Что "делает неработоспособной" это сказал я. Потому что действительно работать невозможно :). Запросы могут быть конечно плохими, но вряд ли причина в этом. Потому что под FB2.5 SC - все ОК. Под FB 3.0 SC - все ОК. А вообще эта программа (ну в более старой версии) и под IB работала. Все проблемы - при использовании FB 3.0 SS. По моему это с запросами связано быть не может. UDF - есть. Но опять же в SC они работают нормально. Или здесь есть какая то принципиальная разница. Статистика: Gstat execution time Mon May 06 11:49:26 2019 Database header page information: Flags 0 Generation 1117081 System Change Number 0 Page size 4096 ODS version 12.0 Oldest transaction 2113 Oldest active 933798 Oldest snapshot 933798 Next transaction 1125724 Sequence number 0 Next attachment ID 2371 Implementation HW=AMD/Intel/x64 little-endian OS=Windows CC=MSVC Shadow count 0 Page buffers 1024 Next header page 0 Database dialect 1 Creation date May 6, 2019 4:28:31 Attributes force write, no reserve Variable header data: Sweep interval: 0 *END* ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:03 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, авторFlags 0 Generation 1117081 System Change Number 0 Page size 4096 ODS version 12.0 Oldest transaction 2113 Oldest active 933798 Oldest snapshot 933798 Next transaction 1125724 Sequence number 0 Next attachment ID 2371 Implementation HW=AMD/Intel/x64 little-endian OS=Windows CC=MSVC Shadow count 0 Page buffers 1024 Next header page 0 Database dialect 1 Creation date May 6, 2019 4:28:31 Attributes force write, no reserve Variable header data: Sweep interval: 0 *END* а это кто поставил? Ты в курсе что оно перекрывает значение из конфига, поэтому вот это DefaultDbCachePages = 50000 не фига не применилось ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:20 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovUDF - есть. Но опять же в SC они работают нормально. Или здесь есть какая то принципиальная разница.Разница есть. Исходники УДФ есть? Что подразумевает термин "работают нормально"? Падение УДФ на классике совсем не то, что падение на супере. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:21 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Ну я бы для начала все-же избавился от очевидных вещей и первое что бросилось в глаза Attributes force write, no reserve ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:22 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
мда... база в удручающем состоянии... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:22 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, блин тут ещё и авторPage size 4096 а я ещё я вижу что свип у вас не только автоматический отключен, но и ручной ни разу не сработал ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:22 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovPage size 4096И это, кстати, тоже не фонтан. Я бы отресторил с 16к. ahmed sultanovAttributes force write, no reserve"но резерв" с какой целью поставлен? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:23 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Раз проц на 100% нагружен, я бы посмотрел профайлером где он пропадает. Маленький кеш увеличивает чтения, но не грузит же процессор вроде. Все советы верные, но профайлером посмотреть внутрях не плохо же, особенно в момент комы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:34 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денисahmed sultanov, Предоставить результаты fb_lock_print Для супера он не сильно показателен может быть. Там нет страничных блокировок и это затрудняет диагностику. На линуксе я пытался шаманить штуками вроде SystemTap в user space. Новые ядра имеют бОльшие возможности, но все равно не просто и на винде не представляю как это делать. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:49 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Roman Simakovувеличивает чтения, но не грузит же процессор вроде.виндовый таск менеджер имеет привычку показывать процы загруженными, когда те ждут ввода-вывода, дискового, например. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 12:52 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyRoman Simakovувеличивает чтения, но не грузит же процессор вроде.виндовый таск менеджер имеет привычку показывать процы загруженными, когда те ждут ввода-вывода, дискового, например. Мне всегда казалось что ОС снимает задачу с ЦПУ в режиме ожидания. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 13:05 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Roman SimakovРаз проц на 100% нагружен, я бы посмотрел профайлером где он пропадает. Маленький кеш увеличивает чтения, но не грузит же процессор вроде. Все советы верные, но профайлером посмотреть внутрях не плохо же, особенно в момент комы. я сильно сомневаюсь что ТС на это способен. Максимум бекстрейс снимет в момент зависания ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 13:10 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskyвиндовый таск менеджер имеет привычку показывать процы загруженными, когда те ждут ввода-вывода, дискового, например. Это не так. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 13:10 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskyahmed sultanovUDF - есть. Но опять же в SC они работают нормально. Или здесь есть какая то принципиальная разница.Разница есть. Исходники УДФ есть? Что подразумевает термин "работают нормально"? Падение УДФ на классике совсем не то, что падение на супере. Дело не в падениях. На классике кривой запрос ставит раком одного пользователя, и он 10 минут плюёт в потолок, матеря себе под нос программистов, но шум особо не поднимается, потому что в целом все работают. На супере он ставит полураком всех и тут уже поднимается хай. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 14:04 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Старый плюшевый мишка, у тебя устаревшие сведения о супере. Сейчас он совсем не тот что был 1.x или 2.x Из старых страшилок осталась актуальной лишь падение всех пользователей вместо одного. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 14:11 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskyahmed sultanovPage size 4096И это, кстати, тоже не фонтан. Я бы отресторил с 16к. А есть вменяемые рекомендации по выбору размера страницы? У нас тоже четыре, но и база поменьше. Если быстродействие увеличилось бы, отресторили бы с шестнадцатью или с восемью. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 14:42 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
KreatorXXI, в трёшке по умолчанию БД уже создаётся с размером страницы 8K. В большинстве случаев этот размер оптимален. KreatorXXIА есть вменяемые рекомендации по выбору размера страницы? Обычно если в статистике есть индексы с глубиной больше 3, то надо увеличить размер страницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 14:51 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЭто не так.Разве что в новых виндах, по ХР включительно так и было. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 15:46 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денис, Спасибо. Про восемь в релизнотах есть. Иван рекомендует 16. Вот это удивило. А чем плох большой размер страницы (В рамках ФБ)? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 15:50 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskyпо ХР включительно так и было. Там так было только когда диск выпадал в режим PIO. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 15:51 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
KreatorXXIИван рекомендует 16. Вот это удивило.У меня на 8к несколько индексов дают глубину в 4. база у автора 35 гиг, поэтому дал рекомендацию по максимуму. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 16:01 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovOldest transaction 2113 Oldest active 933798 Oldest snapshot 933798 Next transaction 1125724 150к транзакций в час, где-то полтора часа назад (от вывода gstat -h) стартовала snapshot-транзакция, которая до сих пор активна. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 18:16 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
06.05.2019 18:16, kdv пишет: > 150к транзакций в час, где-то полтора часа назад (от вывода gstat -h) стартовала snapshot-транзакция, которая до сих пор активна. при использовании BDE нужно было довольно нетривиально поипаццо, чтоб стартовала НЕ snapshot-транзакция. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.05.2019, 18:22 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Пишу чтобы завершить тему. Перепробовал различные варианты настройки. Database header page information: Flags 0 Generation 1195600 System Change Number 0 Page size 16384 ODS version 12.0 Oldest transaction 15833 Oldest active 1130310 Oldest snapshot 1130310 Next transaction 1208964 Sequence number 0 Next attachment ID 3118 Implementation HW=AMD/Intel/x64 little-endian OS=Windows CC=MSVC Shadow count 0 Page buffers 50000 Next header page 0 Database dialect 1 Creation date May 8, 2019 4:31:08 Attributes force write Variable header data: Sweep interval: 0 Добился серьезной подвижки - за полтора дня работы ни одного зависания, загрузка процов нормальная. Вместо этого - регулярный вылет отдельных пользовательских приложений при попытке соединиться с базой. С учетом того, что у нас каждое приложение раз в десять минут в параллельном потоке создает BDE-подключение для фонового обновления данных, то соответственно работать невозможно. Возвращаюсь на SuperClassic - в нем, как писал выше, ни одной из описанных проблем не возникает даже на базовых настройках. Следующий заход в SuperServer - либо когда найду какую то существенно новую информацию по этим чудесам, либо (что скорее) - ждем FB4. Всем спасибо за помощь и комментарии. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 14:44 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
08.05.2019 14:44, ahmed sultanov пишет: > Следующий заход в SuperServer - либо когда найду какую то существенно новую информацию по этим чудесам, либо (что скорее) - ждем FB4. свип настрой. и буффера в хидер базы не пиши (выставь 0) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 14:50 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Мимопроходящий, спасибо. Но sweep не хочу - у нас ночью происходит backup/restore. А в течении дня sweep для нашей базы - только лишние тормоза. А вот насчет буферов - вы считаете, что это принципиально? Здесь есть какая то выгода? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 14:59 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov> А вот насчет буферов - вы считаете, что это принципиально? Буфера в хидере БД "перекрывают" настройки конфига. Поставишь в 0 - будут браться настройки из конфига. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:11 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
08.05.2019 14:59, ahmed sultanov пишет: > А вот насчет буферов - вы считаете, что это принципиально? Здесь есть какая то выгода? если это значение прописано в хидере базы, то значение из datbases.conf игнорируется. а с учётом того, что ты туда-сюда меняешь режим работы CS/SC/SS, всё таки лучше использовать datbases.conf Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:11 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovВозвращаюсь на SuperClassic - в нем, как писал выше, ни одной из описанных проблем не возникает даже на базовых настройках. Следующий заход в SuperServer - либо когда найду какую то существенно новую информацию по этим чудесам, либо (что скорее) - ждем FB4. скорее всего проблемы в твоём приложении или БД. Так что можешь не дождаться положительного результата и в 5-ке. Я у себя уже всё отладил на 3.0 SS и никаких глюков. Ты вместо анализа того что именно происходит просто перебираешь различные варианты конфигов ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 16:36 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovрегулярный вылет отдельных пользовательских приложений при попытке соединиться с базойПоразительно точная и исчерпывающая диагностика. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 17:40 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денис> Ты вместо анализа того что именно происходит просто перебираешь различные варианты конфигов Он же не разработчик и даже не DBA. Он либо сисадмин, либо вообще сбоку припеку ("ну ты же админ - разберись"). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 19:15 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов ДенисТы вместо анализа того что именно происходит просто перебираешь различные варианты конфигов Я исхожу из того, что архитектура приложения и выбранный вариант конфигурации сервера - это малопересекающиеся сущности. Может быть я не прав. Но эта база и связанные с ней приложения нормально работали в вариантах IB7.5+BDE (SS), IB2009+BDE (SS), FB2.5+BDE (SC - потому что не было многопроцессорного SS) и теперь FB3+BDE (SC). А в FB3+BDE (SS) - не работают. Из этого я делаю вывод, что в реализации SS в FB3 есть какие то серьезные отличия от него же в IB и что под SS наши программы работают не так как под SC. Как диагностировать эту проблему со стороны приложения мы придумать не можем - потому, что проблемы возникают не при выполнении каких то действий программы, а через некоторое время стандартной работы программ при стандартной нагрузке. При этом под SS - проблемы есть. Под SC - нет. С тем, что программы для использования с FB (SS) и c FB (SC) должны чем то серьезно отличаться я ранее не сталкивался. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2019, 17:14 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovКак диагностировать эту проблему со стороны приложения мы придумать не можемНанять программиста который сможет? Либо использовать ту конфигурацию сервера, которая работает. У вас вообще есть разбирающий в коде клиентского приложения программист? Исходный код приложения и УДФ есть? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2019, 17:21 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyЛибо использовать ту конфигурацию сервера, которая работает Ну собственно к этому пока и пришли. Исходники, udf и программисты у нас разумеется есть :). Но вариант полного рефакторинга базы на 4000 хранимых процедур и пропорциональное количество кода в приложениях не зная чего искать - не вариант. Чтобы что то найти надо или найти в какой момент оно происходит (а оно ни в какой не происходит - происходит в случайный момент по итогам полутора часов работы) или понять ЧТО ИМЕННО при стандартной работе с базой FB3 и BDE может приводить к тотальной загрузке процов под SS и не приводить под SC. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 10:06 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovIvan_PisarevskyЛибо использовать ту конфигурацию сервера, которая работает Ну собственно к этому пока и пришли. Исходники, udf и программисты у нас разумеется есть :). Но вариант полного рефакторинга базы на 4000 хранимых процедур и пропорциональное количество кода в приложениях не зная чего искать - не вариант. Чтобы что то найти надо или найти в какой момент оно происходит (а оно ни в какой не происходит - происходит в случайный момент по итогам полутора часов работы) или понять ЧТО ИМЕННО при стандартной работе с базой FB3 и BDE может приводить к тотальной загрузке процов под SS и не приводить под SC. ИМХО. Народ есть, но никто не хочет искать проблему. Типичный случай! Рефакторинга не нужно. Есть один косячный запрос, который вешает сервак. Его надо найти. В режиме CS работа этого запроса не столь критична. Ну может быть не один запрос, может и не запрос, а хранимка и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 10:25 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovНо вариант полного рефакторинга базы на 4000 хранимых процедур и пропорциональное количество кода в приложениях не зная чего искать - не вариант. Чтобы что то найти надо или найти в какой момент оно происходит (а оно ни в какой не происходит - происходит в случайный момент по итогам полутора часов работы) или понять ЧТО ИМЕННО при стандартной работе с базой FB3 и BDE может приводить к тотальной загрузке процов под SS и не приводить под SC. для этого надо взять firebird с отладочной информацией снять бектрейс во время зависания и отправить его разработчикам, если конечно тебя интересует решение твоей проблемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 11:12 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovможет приводить к тотальной загрузке процов под SS и не приводить под SC. что-то связанное со сборкой мусора и версиями. в SS она фоновая, в SC/CS - явная. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 13:14 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денисдля этого надо взять firebird с отладочной информацией снять бектрейс во время зависания и отправить его разработчикам Это, конечно, абсолютный способ, но я бы начал с чего попроще: анализа логов и включения аудита. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 13:28 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
KreatorXXIВ режиме CS работа этого запроса не столь критична Вот это у меня в голову и не влезает. Я могу понять какой нибудь плохо написанный запрос, который условно говоря выполняется час и грузит на этот час проц. Но тогда в SC у нас все время были бы пользователи у которых зависает (падает) приложение (ну или не выполняется какая то функция). У нас таких нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 13:30 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
kdvнебось у приложений с управлением транзакциями все настолько плохо, что принудительная сборка мусора на суперклассике работает, а фоновая на супере - тормозит... что-то связанное со сборкой мусора и версиями. в SS она фоновая, в SC/CS - явная. Спасибо. Мне тоже кажется, что это версия значительно более вероятная чем не какая то ошибка в конкретной процедуре или глючная UDF. Но дело в том, что у нас очень "дубовое" BDE-шное приложение. Явное управление транзакциями используется только для бизнес-логики (несколько запросов, которые не удается запихать в одну хранимую процедуру, вызываются в клиенте с явным вызовом StartTransaction и Commit). Во всех остальных случаях все работает как стандартный BDE-шный AUTOCOMMIT. Подход вероятно не оптимальный, но вроде как раньше был допустимым (для того же IB SS). Но почему фоновая сборка мусора может не справляться? И нельзя ли с ней что то сделать? И, да, в свое время, еще на IB, когда мы еще не отключали SWEEP, он запускаясь в течении дня тоже все вешал намертво. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 13:47 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Если у вас есть исходники, то BDE-шность не проблема, это вопрос лишь времени доводки до ума (в зависимости от размеров и сложности кода). Если исходников нет, то все ваши пляски с бубном и подпрыгивания смехотворны, "сломается" и тормозить будет "если не тут, то там". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 14:15 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, режим сборки мусора регулируется параметром GCPolicy Для супера по умолчанию она combined, т.е. работает как фоновая так и кооперативная. Для классика и суперклассика всегда cooperative ahmed sultanovВо всех остальных случаях все работает как стандартный BDE-шный AUTOCOMMIT. он работает через COMMIT RETAIN, а потому сборка мусора фактически не делается и ждёт настоящего коммита. ahmed sultanovНо почему фоновая сборка мусора может не справляться? потому что ваша стратегия управления транзакциями не даёт ей это делать. В то редкое время когда всё таки самая древняя транзакция всё таки по настоящему завершается работы для сборки мусора уже слишком много. Это тебе не 4.0 со своей промежуточной сборкой мусора. Подозреваю что ваше приложение вовсе не делает кооперативную сборку мусора весь день, уповая на b/r в конце рабочего дня ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 17:00 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов Денис, но если так, то меня вообще должен спасти SS c настройкой GCPolicy=cooperative? Если в таком режиме сборка мусора будет происходить аналогично тому, как у нас обычно в SC. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 17:59 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Симонов ДенисВ то редкое время когда всё таки самая древняя транзакция всё таки по настоящему завершается работы для сборки мусора уже слишком много.Не дать этого сделать? То бишь стартовать с утра паразитную транзакцию и держать весь рабочий день, нехай версии копятся, нет мусора, нет сборки. Чистить тотально темной ночью. Надо ДикоСержа призвать, когда-то давно он что-то подобное описывал. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 18:17 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovесли так, то меня вообще должен спасти SS c настройкой GCPolicy=cooperative? Пляски с бубном и метод тыка Вас не спасут точно. Включите уже аудит и посмотрите статистику долгих запросов. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 18:21 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovИ нельзя ли с ней что то сделать? боже ж мой. в firebird.conf параметр GCPolicy поставь в cooperative. А насчет BDE и транзакций, см. раздел Transaction Isolation Levels & InterBase в http://support.codegear.com/article/34796 там, кстати, написано The 4096 driver flag bit only affects implicit transaction behavior. Use the COMMIT RETAINING property to control the default commit behavior of explicit transactions. Вообще, хоть у вас и BDE, про транзакции, версии и сборку мусора читать было бы неплохо. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 18:25 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanovу нас ночью происходит backup/restore я хочу еще добавить, что если без ночного restore на следующий день "всё плохо", то это явное свидетельство того, что в базе проблемы с количеством версий/мусора. Никто gstat -r не смотрел, с транзакциями плохо из-за BDE, и так далее. Ну поставьте себе raid 10 из 4х SSD, полегчает на полгода-год, может быть. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2019, 18:28 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
Всем спасибо. в особенности уважаемым kdv и Симонов Денис. Данная проблема решена настройкой GCPolicy = cooperative Ничего не виснет. Загрузка процов нормальная. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.05.2019, 12:55 |
|
Проблема загрузки процессоров при использовании FB 3 (SS)
|
|||
---|---|---|---|
#18+
ahmed sultanov, похоже на временный костыль. Неспроста по умолчанию для SS - combined. Посмотрел как у нас. У нас по умолчанию. Проблем нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.05.2019, 14:08 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1560712]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
132ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
102ms |
get tp. blocked users: |
1ms |
others: | 292ms |
total: | 566ms |
0 / 0 |