firebird.conf

Отговори
Потребителски аватар
stoar08
Мнения: 1548
Регистриран: 09-11-2004 08:15
Име: Стоян Арабаджиев
Местоположение: Самоков

firebird.conf

Мнение от stoar08 » 11-10-2007 13:17

В 99% от случаите ни е достатъчна стандартната конфигурация на firebird. В процеса на работа, обаче, съм забелязал, че firebird използва или RAM или процесор (зависи от кое има повече ;) ).

В стандартното положение при 3 работни станции, пиковата стойност на използвания рам рядко е над 30MB. Понеже повечето сървъри разполагат с доста повече RAM, аз лично променям следните 3 неща :

DefaultDbCachePages = 2048 - поне 10240 :).

SortMemBlockSize = 1048576 - (1MB) вдигам го 5-10 пъти

SortMemUpperLimit = 67108864 - (64MB) вдигам го НЕповече 5 пъти (в противен случай 512 MB RAM не стигат и започва да прави проблеми).

И 2та параметъра са индивидуални за всяка връзка към сървъра и прекаляването с тях може да доведе до нестабилност. Винаги можете да ги промените по време на извършаването на тежка за firebird процедура(при която реално има само 1 връзка) и да ги върнете в по-разумни граници след това.
Разбира се би-могло да се дигат и по-скромно. Всякакъв вид увеличние спомага за намаляване товара на процесора и преместването му върху паметта.

Други интересни настройки са например :

MaxUnflushedWrites = 100 - позволява промяна на максималния брой незаписани върху HDD записи. -1 ги забранява, но вероятно би забавило работата.

MaxUnflushedWriteTime = 5 - същото, но не в брой, а във време.
Моля ви, като прочетете тема пишете по едно мнение да не ви търся по icq/телефон после ...

Потребителски аватар
mIRCata
Admin
Мнения: 1065
Регистриран: 15-11-2004 15:25
Име: инж. Мирослав Джоров
Местоположение: Тайна майна
Контакти:

Мнение от mIRCata » 12-10-2007 08:42

Препоръчват при по-големи натоварвания да се увеличи и стойността на
LockHashSlots. По подразбиране е 101. Максималната стойност, която може да заеме е 2048. Ако се променя е по-добре да се слагат прости числа. Най-голямото в случая просто число под тази стойност е 2039.

Потребителски аватар
stoar08
Мнения: 1548
Регистриран: 09-11-2004 08:15
Име: Стоян Арабаджиев
Местоположение: Самоков

Мнение от stoar08 » 12-10-2007 15:08

CpuAffinityMask = 1 - при =3 разрешава използването на 2та процесора (2те ядра). Валидно е само при windows и superserver на firebird.
Моля ви, като прочетете тема пишете по едно мнение да не ви търся по icq/телефон после ...

Потребителски аватар
mIRCata
Admin
Мнения: 1065
Регистриран: 15-11-2004 15:25
Име: инж. Мирослав Джоров
Местоположение: Тайна майна
Контакти:

Мнение от mIRCata » 15-10-2007 10:37

Това кой сървър да се ползва е много интересен въпрос. И двете архитектури Classic и SuperServer си имат своите предимства и недостатъци - и кое ще се ползва зависи от ситуацията.

Но да, за SuperServer дават, че няма вградена поддръжка за многопроцесорни машини. И проблема под windows е, че ОС започва да прехвърля изпълнението на процеса ту на единия, ту на другия процесор(Говорим за дву-процесорна машина).
И затова се налага та се ползва тази променлива.
1 - ползва се само първия процесор
2- ползва се само втория процесор
3 - ползва се първи и втори.
За по-голям брой процесори/ядра вече се решава на кои от тях да върви и се задава съответна маска.
Ако на някой му се занимава и му е интересно - смята се "побитово" със степени на двойката.

Отговори