Чтение онлайн

ЖАНРЫ

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Борри Хелен

Шрифт:

Параметры CpuAffinityMask и cpu?affinity получают значение целого числа: маску CPU. Например:

CpuAffinityMask = 1

cpu_affinity = 1

Суперсервер запускается только на первом процессоре (CPU 0).

CpuAffinityMask = 2

cpu_affinity = 2

Запускается только на втором процессоре (CPU 1).

CpuAffinityMask = 3

cpu_af finity = 3

Запускается на первом и на втором процессорах.

! ! !

ВНИМАНИЕ! Этот параметр не работает в Windows 9х или ME, поскольку он использует вызов NT API. Версии Windows 9х не могут использовать более одного процессора.

. ! .

Вычисление
значения CpuAffinityMask

Вы можете использовать этот параметр для установления свойства Firebird для любого одного процессора или (для Классического сервера) любой комбинации процессоров, установленных в системе.

Рассматривайте центральные процессоры как массив, пронумерованный от 0 до n-1, где n- количество установленных процессоров, i - номер в массиве конкретного процессора. M- другой массив, содержащий значение маски (Maskvaiue) для каждого выбранного CPU. Значение А является суммой значений в массиве M.

Используйте следующие формулы для получения Ми вычисления Maskvaiue А:

Mi = 2l

А = М1+М2 + M3 ...

Например, для выбора первого и четвертого процессоров (процессор 0 и процессор 3) вычислите:

А = 20 + 23 = 1 + 8 = 9

! ! !

ВНИМАНИЕ! Серверы Firebird версии 1.5 и ниже могут не поддерживать Нурег-Threading на некоторых ранних моделях материнских плат. Для устранения проблем балансировки нагрузки может оказаться необходимым отменить Hyper-Threading на уровне BIOS системы.

. ! .

Маска процессоров по умолчанию 1 (процессор 0).

DefaultDbCachePages

Версия 1.5 и более поздние.

database_cache_pages

Версии, предшествующие Firebird 1.5.

Устанавливает глобальное для сервера значение по умолчанию (целое число) количество страниц базы данных, выделяемых в памяти для каждой базы данных. Сконфигурированное значение может быть перекрыто на уровне базы данных.

Значение по умолчанию для Суперсервера 2048 страниц. Для Классического сервера - 75.

Суперсервер и Классический сервер выделяют и используют кэш-память по-разному. Не существует "формулы", которую можно было бы применить для установки оптимального значения по умолчанию размера кэша, который подошел бы для всех случаев. Тем не менее факторы, влияющие на производительность, подробно обсуждаются в разд. "Кэш базы данных" главы 15.

EventMemSize

Версия 1.5 и более поздние.

Это целое число, задающее количество байтов памяти, выделяемой для менеджера событий. Значение по умолчанию 65 536 (64 Кбайт).

SortMemBlockSize

Версия 1.5 и более поздние.

Этот параметр позволяет сконфигурировать размер в байтах каждого блока памяти, используемого для модуля внутренней сортировки. Значение по умолчанию при инсталляции 1 Мбайт, который вы можете заменить любым значением, не превышающим текущее значение максимума, установленного в параметре sortMemupperLimit.

SortMem UpperLimit

Версия 1.5 и более поздние.

Максимальный размер памяти в байтах, выделяемой для модуля внутренней сортировки. Значение по умолчанию при инсталляции 67 108 864 байт (64 Кбайт) для Суперсервера и 8 388 608 байт (8 Кбайт) для Классического сервера.

! ! !

ВНИМАНИЕ! Для Классического сервера

значение по умолчанию слишком велико, если только не подключено большое количество клиентов. Помните, что увеличение размера любого блока или максимального ограничения в Классическом сервере влияет на каждое клиентское соединение (экземпляр сервера) и увеличивает потребление сервером памяти в линейной пропорции.

. ! .

Параметры, связанные с коммуникацией

ConnectionTimeout

Версия 1.5 и более поздние.

connection_timeout

Версии, предшествующие Firebird 1.5.

Задает количество секунд ожидания до прекращения попытки соединения. Значение по умолчанию 180.

DummyPacketlnterval

Версия 1.5 и более поздние.

dummy_packet_interval

Версии, предшествующие Firebird 1.5.

Это старый параметр InterBase, устанавливающий количество секунд (целое число), в течение которых сервер должен ждать молчания клиентского соединения, прежде чем отправить пустой пакет для подтверждения запроса. По умолчанию устанавливается в 0 (отключено) для Firebird 1.5 и в 60 для Firebird 1.0.x.

! ! !

ВНИМАНИЕ! Этот параметр не должен использоваться в Windows совсем, и он не рекомендуется для других операционных систем [139] .

139

По причине ошибки в Windows использование DummyPacketlnterval может привести к зависанию или краху Windows на клиентской стороне. Объяснения см. в статье Microsoft Support:Не рекомендуется его также использовать и для систем, отличных от Windows, поскольку это может привести к отключению активного клиента.

. ! .

В Firebird 1.0.x откройте iboonfig (Windows) или iso config (другие системы) и добавьте строку:

dummy_packet_interval=0

Обычно Firebird отслеживает активные соединения с использованием режима разъема SO_KEEPALIVE с периодом по умолчанию 2 часа. Если вам нужно изменить период ожидания, подрегулируйте установки сервера [140] :

* для сервера POSIX измените содержание proc/sys/net/ipv4/tcp_keepalive_*;

* для Windows просмотрите инструкции в статье на/default.aspx?kbid=140325.

140

Подробно по настройкам keepalive читайте статью www.ibase.ru/devinfo/keepalive.htm.
– Прим. науч. ред.

RemoteServiceName

Версия 1.5 и более поздние.

Это имя сервиса на сервере. Если файл firebird.conf включен только в клиентскую инсталляцию (см. главу 7), то клиент при необходимости будет отыскивать в нем имя сервиса. См. также RemoteServicePort (описан в следующем разделе). Более подробную информацию см. в разд. "Конфигурирования порта сервиса" главы 2.

Default = gds_db

RemoteServicePort

Версия 1.5 и более поздние.

Поделиться с друзьями: