|
|
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Сабж, собственно: http://ib-aid.com/ru/optimized-firebird-configuration/ Отзывы, замечания и предложения приветствуются. With best regards, Alexey Kovyazin www.ibsurgeon.com www.ibase.ru/techsupp.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2014, 21:55 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Вытащу таки сюда то, что у мну сусеках записано было. И предлагаю затолкать туда в качестве шпоры :-) 0) Бысто вытащить все только незакомментаренные параметры конфига, без "#-мусора": Код: plaintext 1. 2. 1) Про LockHashSlots , http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=993274&msg=13688627 kdvпо LockMemSize еще запомните формулу (автор - dimitr) LockMemSize >= Cache_pages * max_connections_count * 100 А насчет LockHashSlots Пешков давно заявлял, что уже можно ставить 10007, фактически в качестве "дефолтного" значения. 2) Опять про LockHashSlots , http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1075167&msg=15519745 dimitrТаблоидНа стр. 10 по-прежнему торчит старое LockHashSlots = 1009. Этот дефолт - он действительно устарел (так считает Алекс, если смотреть на ссылку от kdv) или нет ?"старое" - это 101 слот, а 1009 слотов являются дефолтом не так и давно, последние 5 лет. Насчет "устаревшего" - все зависит от числа коннектов, давай посчитаем вместе: 1009 слотов в среднем по 10 коллизий это 10К страниц (остальные типы локов для простоты игнорируем). Дефолтный размер кеша SC/CS - 75 страниц в 2.х и 256 страниц в 3.0. Получается, что дефолт рассчитан на ~130 коннектов в 2.х и ~40 коннектов в 3.0. На самом деле несколько меньше. Мое личное мнение - в 3.0 можно и увеличить, а в 2.5 число слотов вполне адекватно размеру кеша.3) Про LockMemSize , http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1092754&msg=15971603 dimitrв первом приближении: число страниц кеша * число коннектов в пике * 100 байт. А проще мониторить параметр Used лок-таблицы в течении дня и устанавливать LockMemSize в значение раза в два (чтобы с запасом) более найденного.4) Про TempBlockSize, TempCacheLimit , а также их "влияние" на GTT: http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1099687&msg=16152458 dimitrэти параметры (TempBlockSize и TempCacheLimit) на GTT никак не влияют :-) А TempBlockSize я бы советовал выставлять не более 5% от TempCacheLimit и не менее 1МБ (дефолтное значение). Плюс добавить "мантру" (DS'a, кажется): размер страничного кеша д.б. равен примерно половине объема физ. памяти. Плюс добавить инфу о том, что если в CS/SC команда fb_lock_print -c -d <database> | grep -i "hash lengths" выдаёт для "min/avg/max" значения больше, чем M1 / M2 / M3, то надо делать "то-то и то-то" (M1, M2, M3 - не помню точно их; но max был меньше 15-20). ЗЫ. Еще неплохо бы скопипастить туда (с разрешения автора, ес-сно) статью про настройку keep-alive'ов в nix/win. Эти параметры влияют на время отвала мертвяков, их дефолтные значения могут приводить к "недоразумениям". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2014, 22:45 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
> Плюс добавить "мантру" (DS'a, кажется): размер страничного кеша д.б. равен примерно половине объема физ. памяти. Ты извини, но мы другим богам молимся :) Размер страничного кэша до 2.5 включительно на SuperServer (речь то про него?) ставить надо в 10000. Якобы есть процедуры разогрева кэша и прочая-прочая для больших значений, но эффект от такого тюнинга минимальный, а вот геморроя и тестов выше крыши. Для Classic и SuperClassic совет тем более не годится - намедни ребята из Австралии обратились с БД в 5Гб и 128Гб ОЗУ, с 80 коннектами. По этой логике, надо каждому коннекту воткнуть по 50 тысяч буферов? :) И у россиян такое видели, в Инфоклинике. На 3.0 в твоем тесте и вообще ситуация с кэшем более интересная, и эффект от разогрева виден невооруженным взглядом, но с 3.0 мы только начинаем набирать практический оптимизационный опыт - т.к. коллективных разум юзеров в плане создания проблем куда как мощнее силы предвидения разработчиков :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2014, 23:04 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Alexey KovyazinРазмер страничного кэша до 2.5 включительно на SuperServer (речь то про него?) ставить надо в 10000. Якобы есть процедуры разогрева кэша и прочая-прочая для больших значений, но эффект от такого тюнинга минимальный, а вот геморроя и тестов выше крыши .А это не устаревшие страшилки ? Какой там гемор, в чём он ? Я вот помню, что Главный Источник Света сказал, что это давно уже пофиксено, с 2.0 вроде. Не могу найти сиё, но точно помню разговор на эту тему. Alexey KovyazinДля Classic и SuperClassic совет тем более не годится - намедни ребята из Австралии обратились с БД в 5Гб и 128Гб ОЗУ, с 80 коннектами. По этой логике, надо каждому коннекту воткнуть по 50 тысяч буферов? :) И у россиян такое видели, в Инфоклинике.Гм... ну, а какой тогда верхний лимит-то для CS/SC ? 10 тыс страниц ? Alexey KovyazinНа 3.0 в твоем тесте и вообще ситуация с кэшем более интересная, и эффект от разогрева виден невооруженным взглядом, но с 3.0 мы только начинаем набирать практический оптимизационный опыт - т.к. коллективных разум юзеров в плане создания проблем куда как мощнее силы предвидения разработчиков :)Эффект от разогрева в 3.0 начинает проявляться только при большом числе коннектов (больше 175), а на 2.5 - сразу (скрин - с презентухи к конфе-2014) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2014, 23:22 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Alexey Kovyazin, про конфиг трёшки. Как известно трёшку можно конфигурировать для каждой БД отдельно в файле databases.conf. Например вот так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Кстати тут возник такой вопрос: в суперсервере страничный кэш выделяется индивидуально для каждой БД? Если нет то какой будет итоговый размер страничного кэша в указанной конфигурации и будет ли кэш одной БД вытесняться в процессе работы с другой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 10:15 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, индивидуально, конечно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 10:21 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
dimitr, ещё один вопросик firebird.conf# =========================== # Engine Settings # =========================== # # ---------------------------- # Which CPUs should be used (Windows Only) # # In an SMP system, sets which processors can be used by the server. # The value is taken from a bit map in which each bit represents a CPU. # Thus, to use only the first processor, the value is 1. To use both # CPU 1 and CPU 2, the value is 3. To use CPU 2 and CPU 3, the value # is 6. The default value is 0 - no affinity will be set. # # Type: integer # #CpuAffinityMask = 0 Судя по комментам этот параметр распространяется только на движок в целом. А нельзя ли сделать этот параметр индивидуальным для каждой БД? Например у меня есть 12 ядерный процессор. Я хочу что бы первая БД использовала 8 ядер процессора, а вторая оставшиеся 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 10:29 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, маска назначается процессу целиком, все вопросы к микрософту ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 11:12 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Hello, Alexey Kovyazin! You wrote on 4 декабря 2014 г. 11:17:28: Alexey Kovyazin> Отзывы, замечания и предложения приветствуются. 1.5 classic. DefaultDbCachePages = 512оно конечно лучше чем 75, но весьма спорно. SortMemBlockSize = 1048576 SortMemUpperLimit = 77108864ничем не отличаются от дефолтных. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 11:23 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
dimitr> маска назначается процессу целиком, все вопросы к микрософту В каком смысле? Можно и потокам назначать. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 11:25 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамВ каком смысле? Можно и потокам назначать. +1 msdnThread Affinity Thread affinity forces a thread to run on a specific subset of processors. Setting thread affinity should generally be avoided, because it can interfere with the scheduler's ability to schedule threads effectively across processors. This can decrease the performance gains produced by parallel processing. An appropriate use of thread affinity is testing each processor. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 11:44 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
wadman> msdn Да не надо Диме МСДН цитировать, он и сам его читать умеет, благо там всего 2 функции понадобятся, AFAIU. Просто сама мысль непонятна - если из лени при наличии воркэраунда в виде двух отдельных процессов - то ОК, никаких претензий, надо так и говорить, чего стесняться-то. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 11:57 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
у нас используется SetProcessAffinityMask, про нее написал выше. Существует еще SetThreadAffinityMask, но чтобы ее использовать для SS/SC - надо знать какой поток к какой базе относится. При наличии пула потоков (а управляет им сетевой сервер, который один на все базы) это не совсем примитивно, плюс придется переустанавливать аффинити на каждый вызов АПИ (когда поток берется из пула). Я не уверен, что этот геморрой себя окупит. Ну и таки да, лично я предложил бы поднимать свой инстанс на каждую базу. Не в качестве воркэраунда, а вообще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 12:36 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
dimitrНу и таки да, лично я предложил бы поднимать свой инстанс на каждую базу. Не в качестве воркэраунда, а вообще. Или написать типа такого: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 14:33 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
И кстати AffinityMask удобней задавать в виде ноликов и еденичек, например для 32-ядер: 00111100111111110000000000001111 и чтобы можно было написать человеко-читаемо: 0011 1100 1111 1111 0000 0000 0000 1111 00111100 11111111 00000000 00001111 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 14:42 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDee, ага а кто инициатор их подъёма? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 14:43 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeИли написать типа такого фантазии оставь себе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 14:46 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Симонов ДенисNickDee, ага а кто инициатор их подъёма? возможно тот, кто открывает порт 3050 :) Но разработчикам лучше знать. Я просто со стороны пользователя говорю. Пользователю удобней чтобы был один инсталл и один сервис, и тюнить его он готов в рамках дозволенного разработчиками. А вот просто инсталлировать ещё один инстанс чтобы разнести две базы на разные процессоры или чтобы разделить SS и CS - это уже для многих челендж. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 14:54 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeПользователю удобней чтобы был один инсталл и один сервис Тогда им на Оракул с его "один сервер - одна БД". Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 15:38 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovNickDeeПользователю удобней чтобы был один инсталл и один сервис Тогда им на Оракул с его "один сервер - одна БД". Удобней чтобы был один инсталл и один сервис на все базы, как сейчас. И для гибкости и секюрности нужно к этому добавить возможность поднимать инстансы с собственной конфигурацией, в том числе имеющим свой порт, свой IpcName, свою архитектуру, свою систему аутентификации, свои трэйсы, свои логи и пр. Хотя может и удобней будет делать копию каталога FB для каждой такой базы, и настраивать там глобальный конфиг, регистрировать и запускать отдельный сервис, как сейчас в FB 2.5. Ведь сейчас в 2.5 если люди хотят запустить одну базу как SS, а другую как CS, то они просто молча делают копию FB, правят конфиг, инсталлируют два инстанса на разных портах и всё. Каждый кто хочет одновременно работать с разными архитектурами делает именно так. Все пользователи при первой же потребности проделывают это на раз-два, там делов то на минуту - скопировал, подправил конфиг, зарегистрировал сервис с нужными параметрами (регистрируется элементарно - нужно с firebirdsql.org скачать архив с сервером, скопировать себе install_classic.bat или install_super.bat и запустить нужный с нужным параметром). Т.е. догадается и справится каждый :) И справлялся уже не раз :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 16:52 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeВедь сейчас в 2.5 если люди хотят запустить одну базу как SS, а другую как CS, то они просто молча делают копию FBЗачем копию ??? Если ты не знаешь, как указать листенеру свой порт, это не значит, что это не возможно и никто другой об этом не знает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 17:17 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladNickDeeВедь сейчас в 2.5 если люди хотят запустить одну базу как SS, а другую как CS, то они просто молча делают копию FBЗачем копию ??? Если ты не знаешь, как указать листенеру свой порт, это не значит, что это не возможно и никто другой об этом не знает. Так я и говорю что все пользователи на раз-два сумеют. Подскажи как на раз-два для дефолтной инсталляции FB 2.5 запустить три листенера: первый как SS (5000), второй как CS (5001), третий как SC (5002). Каждый со своим конфигом, естественно. И как это будет для FB3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 18:13 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDee, fbserver -a -i -p 5000 fb_inet_server -a -i -p 5001 fb_inet_server -a -m -i -p 5002 если нужны свои конфиги и\или сервисы - изучай ком строку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 19:28 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladизучай ком строкуЭто что ж мне теперь и доку читать??? Доку читают "неудачнеги"! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 21:04 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Ivan_Pisarevskyhvladизучай ком строкуЭто что ж мне теперь и доку читать??? Доку читают "неудачнеги"! Так он же принципиально «имеет право не хотеть знать»© ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 21:12 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladNickDee, fbserver -a -i -p 5000 fb_inet_server -a -i -p 5001 fb_inet_server -a -m -i -p 5002 если нужны свои конфиги и\или сервисы - изучай ком строку.А что, fbserver.exe / fb_inet_server.exe дейтвительно могут принимать что-то типа '-c my_special_fb.conf' ? PS. Где-то вообще описаны все параметры запуска ФБ как приложения ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 21:28 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Таблоид> PS. Где-то вообще описаны все параметры запуска ФБ как приложения ? Тута ... :-))) -- Vladimir A.Bakhvaloff Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 21:34 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
zirra, там смешно, да. Но не очень информативно. Диля апач толкает в массы, со скринами :-) А про ключик '-h' - заинтриговало: сейчас он ничего не выдаёт. А раньше что - выдавал ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 21:47 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Таблоид, никогда не выдавал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2014, 22:29 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
dimitr> надо знать какой поток к какой базе относится. dimitr> это не совсем примитивно Не смог придумать, какие там могут быть сложности. dimitr> Ну и таки да, лично я предложил бы dimitr> поднимать свой инстанс на каждую базу Я собственно об этом и говорю - надо просто называть (по возможности) вещи своими именами, чтобы не возникало вот таких вот вопросов и возмущений. dimitr> Не в качестве воркэраунда, а вообще. А почему? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 01:09 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladNickDee, fbserver -a -i -p 5000 fb_inet_server -a -i -p 5001 fb_inet_server -a -m -i -p 5002 если нужны свои конфиги и\или сервисы - изучай ком строку. Ну вот, оказывается "fbserver -h" не работает. Забавного кругаля дали прежде чем выйти на это :) И кстати обращаю внимание на странность. То что не работает "fbserver -h" было выявлено давно. Все поржали и оставили как есть. Я не говорю что это плохо. Просто пользователи, особенно которым за тридцатку, на такие финты смотрят с недоумением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 01:43 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
ТаблоидА что, fbserver.exe / fb_inet_server.exe дейтвительно могут принимать что-то типа '-c my_special_fb.conf' ?Нет. Но значение FIREBIRD у каждого процесса вполне может быть своим собственным. ТаблоидPS. Где-то вообще описаны все параметры запуска ФБ как приложения ?У меня есть стойкое ощущение, что я их тут описывал неоднократно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 01:44 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeНу вот, оказывается "fbserver -h" не работает.А что это такое и как именно оно не работает ? NickDeeпользователи, особенно которым за тридцатку, на такие финты смотрят с недоумением.Какие "такие финты" ? Ты с кем сейчас разговариваешь ? Ты опять : - присваиваешь себе право говорить от имени каких-то пользователей - тычешь пальцем в небо - сядешь в лужу Оно тебе надо в твои "за тридцаткой" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 01:48 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladNickDeeНу вот, оказывается "fbserver -h" не работает.А что это такое и как именно оно не работает ? hvladесли нужны свои конфиги и\или сервисы - изучай ком строку.Ты про какую ком строку говорил? Я понял про параметры fbserver.exe. hvlad- присваиваешь себе право говорить от имени каких-то пользователейЯ ведь из их числа. Но я могу выйти из роли пользователя и войти в роль разработчика FB, и увидеть что всё ok, что FB - лучший, и пойти даже в соседние ветки поспорить с кем-нибудь, от лица FB, как тут некоторые практикуют время от времени (спор от лица FB практикуют) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 02:35 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDee> Ну вот, оказывается "fbserver -h" не работает. Забавного кругаля дали прежде чем выйти на это :) NickDee> И кстати обращаю внимание на странность. То что не работает "fbserver -h" было выявлено давно. NickDee> Все поржали и оставили как есть. Хорош бузить уже, утомил, ей-Богу. Особенно если знание вопроса ниже плинтуса. NickDee> Я не говорю что это плохо. Просто пользователи, особенно NickDee> которым за тридцатку, на такие финты смотрят с недоумением. Какие финты? Какие пользователи за тридцатку? Те кретины, которые думают, что -h перестал выдавать список параметров командной строки? Да на здоровье. И много таких кретинов? Кому надо, у кого есть вопрос, проблема - придут, спросят, получат ответ. Проблем и поля для работы и улучшений (в т.ч. по вопросу командной строки) более чем достаточно, но не тот бред и срач, который ты тут несёшь. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 02:52 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDee> Но я могу выйти из роли пользователя и войти в роль разработчика FB, и увидеть что всё ok, что FB - лучший, и пойти даже в соседние ветки поспорить с кем-нибудь, от лица FB, как > тут некоторые практикуют время от времени (спор от лица FB практикуют) :) Ой... Мне стало нехорошоу... -- Vladimir A.Bakhvaloff Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 03:33 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
dimitrСуществует еще SetThreadAffinityMask, но чтобы ее использовать для SS/SC - надо знать какой поток к какой базе относится. При наличии пула потоков (а управляет им сетевой сервер, который один на все базы) это не совсем примитивноСетевой сервер может создать несколько пулов - по одному на каждый бит CpuAffinityMask из firebird.conf плюс необязательный параметр у вызова, возвращающего рабочую нить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 08:01 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, сделать можно многое. Вопрос в том, нафига. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 10:26 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladТаблоидА что, fbserver.exe / fb_inet_server.exe дейтвительно могут принимать что-то типа '-c my_special_fb.conf' ?Нет. Но значение FIREBIRD у каждого процесса вполне может быть своим собственным.Взлетело! Создал три папки: C:\TEMP\FB_1, C:\TEMP\FB_2 и C:\TEMP\FB_3. В каждую из них пришлось копировать: 1) файл security2.fdb; 2) подпапку 'fbintl' (иначе будут ошибки парсинга BLR для непустых баз, в которых есть user-defined коллации); 3) firebird.conf 4) aliases.conf: Код: plaintext 1. 2. Далее отредактировать файлы firebird.conf, задав при этом в них DefaultDbCachePages и RemoteServicePort равными соотв-но: 5001, 5002 & 5003. Затем сбацал вот такой батничек ('fbrun.bat'): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Ну, и запускаю в трёх окнах: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Если теперь в каждом из окон запустить вот это: Код: plaintext 1. 2. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. Помню, что -i блокирует прослушку xnet/wnet, но FB слушает три протокола, и вот какой-то есть еще ключик, который блокирует прослушку третьего (не ТСР, разумеется). А какой - не помню. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 10:41 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Таблоид, попробуй с трёшкой такое проделать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 10:48 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeТы про какую ком строку говорил?Про язык командного интерпретатора. Учись у Таблоида, например. NickDeehvlad- присваиваешь себе право говорить от имени каких-то пользователейЯ ведь из их числа. Вот и говори за себя. В единственном числе от первого лица. А не во множественном от третьего, как ты обычно делаешь. Дальнейший бред даже комментировать не хочется. Ты опять провоцируешь. Серо и однообразно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 11:01 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
ТаблоидПомню, что -i блокирует прослушку xnet/wnet, но FB слушает три протокола, и вот какой-то есть еще ключик, который блокирует прослушку третьего (не ТСР, разумеется). А какой - не помню.По-умолчанию, FB слушает все известные ему сетевые протоколы. На Windows это - INET, WNET, XNET (TCP\IP, NetBEUI, local), на остальных ОС - только INET. При запуске можно указать, какие конкретно протоколы нужно слушать, остальные в этом случае отключены: -i включает INET -w включает WNET -x включает XNET ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 11:07 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeНу вот, оказывается "fbserver -h" не работает. ntoskrnl.exe -h тоже не работает "C:\Program Files (x86)\Common Files\Microsoft Shared\Source Engine\OSE.EXE" -h "C:\Program Files\Microsoft SQL Server\MSSQL10_50.EMSDATABASE\MSSQL\Binn\SQLAGENT.EXE" -h тоже не работают. Как страшно жить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 11:31 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladУ меня есть стойкое ощущение, что я их тут описывал неоднократно. Не имеет значения. Форум - не документация. Даже если вы это на firebirdsql.org укажете - все равно не будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 11:33 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
AriochДаже если вы это на firebirdsql.org укажете ...что форумы на SQL.ru - документация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 11:34 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Таблоид> Помню, что -i блокирует прослушку xnet/wnet Не блокирует, а задаёт использование. Собсно, как Влад выше указал. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 11:42 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Arioch> ntoskrnl.exe -h oi?a ia gaaioaao > > oi?a ia gaaioaso. > > Eae nogaoii ?eou... Дело не в не работает. Добавить вывод хоть в отдельный месседж-бокс, как это делается в некоторых утилитах или как выводится номер версии, можно, просто это преувеличение мухи до слона. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 11:44 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladТаблоидПомню, что -i блокирует прослушку xnet/wnet, но FB слушает три протокола, и вот какой-то есть еще ключик, который блокирует прослушку третьего (не ТСР, разумеется). А какой - не помню.По-умолчанию, FB слушает все известные ему сетевые протоколы. На Windows это - INET, WNET, XNET (TCP\IP , NetBEUI, local), на остальных ОС - только INET. При запуске можно указать, какие конкретно протоколы нужно слушать, остальные в этом случае отключены: -i включает INET -w включает WNET -x включает XNETСпасибо. Прикрутил к стене болтами М12 с гроверными шайбами. Ибо ведь искал недавно, только сейчас нашёл тот старый пост про эту же тему. ЗЫ. Еще небольшой вопрос. XNET - это же локальный протокол. Почему TCP\IP в скобках сразу после него, а не после INET ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 13:42 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
А еще вот что интересно: можно ли ему также элегантно подсунуть единый aliases.conf и sec2.fdb, т.е. не копировать их в отдельные папки ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 13:44 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
ТаблоидЗЫ. Еще небольшой вопрос. XNET - это же локальный протокол. Почему TCP\IP в скобках сразу после него, а не после INET ?А ты перечитай ещё раз. Не получается ? Ну, тогда добавь слово "соответственно" после local На Windows это - INET, WNET, XNET (TCP\IP, NetBEUI, local соответственно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 13:51 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladНа Windows это - INET, WNET, XNET (TCP\IP, NetBEUI, local соответственно )Всё, теперь точно взлетело! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 13:53 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Таблоидможно ли ему также элегантно подсунуть единый aliases.confВ 2.5 - не вижу способа. А вот общий security2.fdb - можно, используя aliases.conf. Но не для SS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 13:54 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladТаблоидможно ли ему также элегантно подсунуть единый aliases.confВ 2.5 - не вижу способа. А вот общий security2.fdb - можно, используя aliases.conf. Но не для SSЛадно, тогда по-деревенски сделаем :-) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 13:57 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladА вот общий security2.fdb - можно, используя aliases.conf. Но не для SS А разве в aliases.conf нельзя указать БД на удалённом сервере? Помнится, часть справа от знака равенства там распознаётся как обычный connection string... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 14:21 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
hvladТаблоидможно ли ему также элегантно подсунуть единый aliases.confВ 2.5 - не вижу способа. банальным симлинк? а блин, тут ж винда, симлинк весьма небанальная штуковина для оной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 15:04 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovА разве в aliases.conf нельзя указать БД на удалённом сервере?Можно. Но - это не будет работать по-умолчанию - это совсем никак не будет работать для security database iirc ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 15:32 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Таблоидhvladпропущено... В 2.5 - не вижу способа. А вот общий security2.fdb - можно, используя aliases.conf. Но не для SSЛадно, тогда по-деревенски сделаем :-) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Винда не умеет запускать батники как сервисы. Так что твоё решение не для продакшена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 17:08 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeВинда не умеет запускать батники как сервисы.Ну так sc.exe из RKit'a ей в помощь. Создай батник, который будет делать что-то типа такого: Код: plaintext 1. 2. 3. 4. 5. 6. Добавь его в HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run. Потренируйся, короче :-) NickDeeТак что твоё решение не для продакшена.У тебя в продакшене, на одном хосте, фигачат сразу несколько ФБ-инстансов, причём они не просто "слушают", а еще и работают - так ведь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 18:32 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
ТаблоидNickDeeВинда не умеет запускать батники как сервисы.Ну так sc.exe из RKit'a ей в помощь. Создай батник, который будет делать что-то типа такого: Код: plaintext 1. 2. 3. 4. 5. 6. Добавь его в HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run. Потренируйся, короче :-) Это тоже не сработает. Нужно логиниться. И при log-off всё отвалится. Только сервисы. Как воркэраунд подойдёт написание exe-шника :) ТаблоидNickDeeТак что твоё решение не для продакшена.У тебя в продакшене, на одном хосте, фигачат сразу несколько ФБ-инстансов, причём они не просто "слушают", а еще и работают - так ведь ? Я думаю что когда у FB будет возможность поднимать инстансы как я писал тут 16949789 , то их начнут поднимать, в том числе и я. Сейчас же это делают единицы, кому очень-очень надо, и когда они не прочь перетереть тонкости с пацанами с sql.ru :) У меня есть система (сервер приложений) с подключением к трём базам, на 2.1. Им всем приходится уживаться в одной архитектуре и с одинаковым размером кэша. Но я бы потюнил, если без мазохизма. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 19:41 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeИм всем приходится уживаться в одной архитектуре и с одинаковым размером кэша. Только потому, что ты не знаешь как назначить каждой БД отдельный размер кэша?.. Ню-ню... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 20:21 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovNickDeeИм всем приходится уживаться в одной архитектуре и с одинаковым размером кэша. Только потому, что ты не знаешь как назначить каждой БД отдельный размер кэша?.. Ню-ню... Хочешь сказать что это работает? Т.е. если я сейчас разберусь как это устроено и прикручу у себя, то там всё будет "чики-пуки"? :) Я вот интуитивно не уверен. Где-нибудь какая-нибудь фигня вылезет, которую чтобы исправить, нужно будет в очередной раз доказывать что это фигня. Но думаю там что-то совсем не рабочее, и быстро не исправимое, раз я этим функционалом не воспользовался (хотя знал что вроде можно как-то). Но можно конечно проверить :) Есть линк на доку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 22:01 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeDimitry Sibiryakovпропущено... Только потому, что ты не знаешь как назначить каждой БД отдельный размер кэша?.. Ню-ню... Хочешь сказать что это работает? Т.е. если я сейчас разберусь как это устроено и прикручу у себя, то там всё будет "чики-пуки"? :) Я вот интуитивно не уверен. Где-нибудь какая-нибудь фигня вылезет, которую чтобы исправить, нужно будет в очередной раз доказывать что это фигня. Но думаю там что-то совсем не рабочее, и быстро не исправимое, раз я этим функционалом не воспользовался (хотя знал что вроде можно как-то). Но можно конечно проверить :) Есть линк на доку? gfix -help ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 22:26 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeЯ вот интуитивно не уверен.Это пи****, а пи**** мы не лечим. NickDeeЕсть линк на доку?gfix на фсё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2014, 23:43 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
pastorNickDeeпропущено... Хочешь сказать что это работает? Т.е. если я сейчас разберусь как это устроено и прикручу у себя, то там всё будет "чики-пуки"? :) Я вот интуитивно не уверен. Где-нибудь какая-нибудь фигня вылезет, которую чтобы исправить, нужно будет в очередной раз доказывать что это фигня. Но думаю там что-то совсем не рабочее, и быстро не исправимое, раз я этим функционалом не воспользовался (хотя знал что вроде можно как-то). Но можно конечно проверить :) Есть линк на доку? gfix -help Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. Как использовать не написано, но опыт подсказывает что как-то так: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2014, 00:07 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
Ага, вот критичные неудобства: 1. Чтобы посмотреть сколько буферов, нужно запускать gstat (для двух БД уже не удобно (особенно на чужом компе), а помнить значения - не упомнишь). 2. При переходе с SS на CS (а у меня был такой переход у заказчика), нужно опять править gfix-ом, сначала посмотрев gstat-ом. 3. Ну и использовать не удобно. Я создаю третью БД по запросу пользователя (минут 10 может создаваться), т.е. мне нужно в коде и создать бд и установить у неё нужное кол-во буферов. Чтобы установить нужное кол-во буферов нужно их хранить в своём конфиге (в коде этому точно не место), т.е. получается некоторое усложнение. Т.е. писать бы я так не стал. Это неподдерживаемо. И если бы я всё закодил по-фэншую, с размерами кэша для каждой БД в своём конфиге (в мегабайтах естественно, а не в страницах), и научился бы корректно применять их к базам при старте если там вдруг что-то другое, то при переходе с SS на CS мне нужно было бы только заменить 3 значения в своём конфиге. И почему-то я всё-таки не пошёл по этому простому и логичному для меня пути. Короче не знаю уже даже :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2014, 00:46 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
NickDeeАга, вот критичные неудобства: 1. Чтобы посмотреть сколько буферов, нужно запускать gstat (для двух БД уже не удобно (особенно на чужом компе), а помнить значения - не упомнишь).Что тут неудобного ? и тем паче - "критичного" ? Тыркай в батник типа такого: Код: plaintext 1. 2. 3. 4. 5. 6. Код: plaintext 1. 2. 3. 4. 5. 6. 7. NickDee2. При переходе с SS на CS (а у меня был такой переход у заказчика), нужно опять править gfix-ом, сначала посмотрев gstat-ом.я не пойму: там у тебя сколько баз вертится, 100 штук ? Какая-то вселенская лень тебя одолела, кажись... NickDee3. Ну и использовать не удобно. Я создаю третью БД по запросу пользователя (минут 10 может создаваться), т.е. мне нужно в коде и создать бд и установить у неё нужное кол-во буферов. Чтобы установить нужное кол-во буферов нужно их хранить в своём конфиге (в коде этому точно не место), т.е. получается некоторое усложнение.Если ты собираешься юзать базу с не-дефолтным кол-вом буферов, то откуда их взять, из какого астрала ? Где-то же они должны храниться или нет ? NickDeeпри переходе с SS на CS мне нужно было бы только заменить 3 значения в своём конфиге.Про buffers понятно. Какие еще два ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2014, 01:18 |
|
||
|
Оптимизированные конфиги для Firebird
|
|||
|---|---|---|---|
|
#18+
ТаблоидNickDeeАга, вот критичные неудобства: 1. Чтобы посмотреть сколько буферов, нужно запускать gstat (для двух БД уже не удобно (особенно на чужом компе), а помнить значения - не упомнишь).Что тут неудобного ? и тем паче - "критичного" ? Тыркай в батник типа такого: Код: plaintext 1. 2. 3. 4. 5. 6. Ну вот чего-то не пришла мне такая мысль :) Возможно просто потому что нет чёрного пояса по написанию батников :) Хотя не так давно написал вот такой хитрый батник: Код: plaintext 1. 2. 3. 4. 5. 6. 7. ТаблоидNickDee2. При переходе с SS на CS (а у меня был такой переход у заказчика), нужно опять править gfix-ом, сначала посмотрев gstat-ом.я не пойму: там у тебя сколько баз вертится, 100 штук ? Какая-то вселенская лень тебя одолела, кажись... Про лень - есть какая-то фигня с этим связанная. Иногда понимаешь что если криво напишешь, то тебя заказчики будут отвлекать, и тут находит такая страшная лень и говорит: "мне лень на них отвлекаться, пиши сразу нормально", и я пишу сразу нормально :) ТаблоидNickDee3. Ну и использовать не удобно. Я создаю третью БД по запросу пользователя (минут 10 может создаваться), т.е. мне нужно в коде и создать бд и установить у неё нужное кол-во буферов. Чтобы установить нужное кол-во буферов нужно их хранить в своём конфиге (в коде этому точно не место), т.е. получается некоторое усложнение.Если ты собираешься юзать базу с не-дефолтным кол-вом буферов, то откуда их взять, из какого астрала ? Где-то же они должны храниться или нет ? В тройке это уже не нужно будет, сам понимаешь :) ТаблоидNickDeeпри переходе с SS на CS мне нужно было бы только заменить 3 значения в своём конфиге.Про buffers понятно. Какие еще два ? У каждой БД свой buffers. У рабочей(CS) на 3/4 оперативки делённое на кол-во коннектов в пуле. У второй можно на 10 МБ сделать. У третьей - мегов 200, чтобы индексы создавались быстро (там только создание БД, перекачка нужных данных и создание индексов). Чёт я тебе так подробно расписываю... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2014, 02:16 |
|
||
|
|

start [/forum/topic.php?all=1&fid=40&tid=1563155]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
170ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
120ms |
get tp. blocked users: |
2ms |
| others: | 249ms |
| total: | 584ms |

| 0 / 0 |
