Firebird + растояние

Попробовал поискать в гугле на нашёл толкового ответа.Вопрос-проблема. База на firebird. и клиент на расстояние ping 160-180 ms. Коннектиться через ibDatabase Delphi 7. Пишет что не может подключиться. Если пинг в приделе 30 то всё хорошо. Есть ли где либо параметр типо timeout.
5 ответов

Не много не такCONNECTION TIMEOUTПараметры в ibconfigCONNECTION_TIMEOUT 180ДействиеУстанавливает время ожидания (таймаут) соединения. По умолчанию – 180 секунд.ОбъяснениеЧтобы распознать клиентов, которые некорректно разорвали соединение, включая тех Windows-клиентов, которые выключили свои компьютеры, не закрыв приложения, InterBase посылает фиктивный пакет в течение времени ожидания (таймаута) соединения. Если ответа на запрос нет в течение установленного времени, то InterBase разрывает соединение.Время ожидания также может быть указано в dpb (database parameter block). Соответствующий параметр имеет название isc_dpb_connect_timeout.Показания к изменению параметраЧем выше значение этого параметра, тем меньше фиктивных запросов будут загружать сеть. С другой стороны, «мертвые» соединения будут дольше «висеть». Рекомендуется значительно увеличить значение этого параметра, если вы точно уверены, что клиентские приложения не будут некорректно завершать свою работу.=================================== =============== DUMMY PACKET INTERVALПараметры в ibconfigDUMMY_PACKET_INTERVAL 60ДействиеЭтот параметр определяет, насколько часто будут посылаться фиктивные запросы для проверки того, что клиент все еще работает. По умолчанию это 60 секунд.******************* закрывает соединение, когда клиент перестает отвечать. Для того, чтобы определить, что клиент более не отвечает на запросы, IB ожидает некоторое время (определяемое параметром CONNECTION_TIMEOUT), а затем посылает фиктивный запрос для проверки соединения. Если при посылке возникает ошибка, то IB заключает, что клиент «мертв».Вы можете настроить частоту, с которой посылаются фиктивные пакеты, либо с помощью этого конфигурационного параметра, либо на уровне соединения – установив в структуре dpb параметр isc_dpb_dummy_packet_interval.Показания к изменению параметраЧем выше это значение, тем реже фиктивные пакеты будут появляться с сети. Но, с другой стороны, «мертвые» соединения будут дольше «висеть». Рекомендуется значительно увеличить значение этого параметра, если вы точно уверены, что клиентские приложения не будут некорректно завершать свою работу.ПримечаниеЕсть непроверенная информация, что значение 0 отключает посылку фиктивных пакетов.=================================== ===idleTimer да 0 он ...не кто его не трогал


Есть ли где либо параметр типо timeout.
у ibDatabase есть параметр idleTimer, но по умолчанию он=0 - т.е. таймер не запускается (судя по исходникам). так что проблема не здесь.Все вышеприведенное является злостным ИМХО.


злостным являются "ping'овые воины" провайдеров. По сути это 2 здания с разными провайдерами. Вариант подключиться не катит...


Вариантов решения проблемы нет? timeout у firebird или у delphi не как не выставить? Типо жди пакет 500 мс


параметры БД в ibconfigCONNECTION_TIMEOUT 180 Устанавливает время ожидания (таймаут) соединения. По умолчанию – 180 секунд.DUMMY_PACKET_INTERVAL 60 Этот параметр определяет, насколько часто будут посылаться фиктивные запросы для проверки того, что клиент все еще работает. По умолчанию это 60 секунд.параметры ibDatabase idleTimer по умолчанию =0 - т.е. разрыва соединения по таймауту нетВсе вышеприведенное является злостным ИМХО.