Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2009, 13:35   #1
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию firebird + растояние

Попробовал поискать в гугле на нашёл толкового ответа.

Вопрос-проблема. База на firebird. и клиент на расстояние ping 160-180 ms. Коннектиться через ibDatabase Delphi 7. Пишет что не может подключиться. Если пинг в приделе 30 то всё хорошо. Есть ли где либо параметр типо timeout.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 22.12.2009, 14:40   #2
Ralf909
 
Регистрация: 22.12.2009
Сообщений: 4
По умолчанию

Цитата:
Есть ли где либо параметр типо timeout.
у ibDatabase есть параметр idleTimer, но по умолчанию он=0 - т.е. таймер не запускается (судя по исходникам). так что проблема не здесь.

Все вышеприведенное является злостным ИМХО.
Ralf909 вне форума Ответить с цитированием
Старый 22.12.2009, 15:15   #3
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

злостным являются "ping'овые воины" провайдеров. По сути это 2 здания с разными провайдерами.
Вариант подключиться не катит...
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 23.12.2009, 11:22   #4
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Вариантов решения проблемы нет? timeout у firebird или у delphi не как не выставить? Типо жди пакет 500 мс
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 24.12.2009, 13:40   #5
Ralf909
 
Регистрация: 22.12.2009
Сообщений: 4
По умолчанию

параметры БД в ibconfig

CONNECTION_TIMEOUT 180
Устанавливает время ожидания (таймаут) соединения. По умолчанию – 180 секунд.

DUMMY_PACKET_INTERVAL 60
Этот параметр определяет, насколько часто будут посылаться фиктивные запросы для проверки того, что клиент все еще работает. По умолчанию это 60 секунд.

параметры ibDatabase
idleTimer
по умолчанию =0 - т.е. разрыва соединения по таймауту нет

Все вышеприведенное является злостным ИМХО.
Ralf909 вне форума Ответить с цитированием
Старый 24.12.2009, 14:14   #6
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Не много не так

CONNECTION TIMEOUT

Параметры в ibconfig

CONNECTION_TIMEOUT 180

Действие

Устанавливает время ожидания (таймаут) соединения. По умолчанию – 180 секунд.

Объяснение

Чтобы распознать клиентов, которые некорректно разорвали соединение, включая тех Windows-клиентов, которые выключили свои компьютеры, не закрыв приложения, InterBase посылает фиктивный пакет в течение времени ожидания (таймаута) соединения. Если ответа на запрос нет в течение установленного времени, то InterBase разрывает соединение.

Время ожидания также может быть указано в dpb (database parameter block). Соответствующий параметр имеет название isc_dpb_connect_timeout.

Показания к изменению параметра

Чем выше значение этого параметра, тем меньше фиктивных запросов будут загружать сеть. С другой стороны, «мертвые» соединения будут дольше «висеть». Рекомендуется значительно увеличить значение этого параметра, если вы точно уверены, что клиентские приложения не будут некорректно завершать свою работу.


=================================== ===============
DUMMY PACKET INTERVAL

Параметры в ibconfig

DUMMY_PACKET_INTERVAL 60

Действие

Этот параметр определяет, насколько часто будут посылаться фиктивные запросы для проверки того, что клиент все еще работает. По умолчанию это 60 секунд.

Объяснение

InterBase закрывает соединение, когда клиент перестает отвечать. Для того, чтобы определить, что клиент более не отвечает на запросы, IB ожидает некоторое время (определяемое параметром CONNECTION_TIMEOUT), а затем посылает фиктивный запрос для проверки соединения. Если при посылке возникает ошибка, то IB заключает, что клиент «мертв».

Вы можете настроить частоту, с которой посылаются фиктивные пакеты, либо с помощью этого конфигурационного параметра, либо на уровне соединения – установив в структуре dpb параметр isc_dpb_dummy_packet_interval.

Показания к изменению параметра

Чем выше это значение, тем реже фиктивные пакеты будут появляться с сети. Но, с другой стороны, «мертвые» соединения будут дольше «висеть». Рекомендуется значительно увеличить значение этого параметра, если вы точно уверены, что клиентские приложения не будут некорректно завершать свою работу.

Примечание

Есть непроверенная информация, что значение 0 отключает посылку фиктивных пакетов.

=================================== ===

idleTimer да 0 он ...не кто его не трогал
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как скопировать диапазоны которые находятся на равном растояние друг от друга... Алексей11111 Microsoft Office Excel 12 15.11.2009 02:34
растояние Хэмминга semennn Помощь студентам 0 06.05.2009 19:11
FireBird Д'якон БД в Delphi 2 04.12.2008 11:15
FireBird 1.5.4 Nikola__ БД в Delphi 2 17.11.2008 14:42
Создаю диаграмму "Bar". Подскажите как убрать растояние между "столбами" MAcK Компоненты Delphi 11 24.10.2007 10:49