медленный коннект Interbase на спутниковом канале

Администирование клиентской и серверной части InterBase, Firebird, Yaffil. Настройка файла конфигурации и т.п.

Модераторы: kdv, Alexey Kovyazin

Ответить
andrewsmirnov
Сообщения: 2
Зарегистрирован: 12 авг 2010, 12:45

медленный коннект Interbase на спутниковом канале

Сообщение andrewsmirnov » 12 авг 2010, 12:57

Здравствуйте!
Есть проблема - дуплексный спутниковый канал 512/256 кбит/с. На моей стороне клиент, на обратной - база данных. Коннект идет где-то минут 20 (общий размер базы на той стороне примерно 10 мбайт, база не растет). Снифер показывает, что идет кэширование всей базы. После этого при попытке обновления данных на моей стороне снова кэширование всей базы (опять минут на 20). Используется Interbase 2007. ОС: на сервере БД - Windows 2003, на клиенте - Windows XP. Из сторонних компонентов - DevExpress Grid. Время ping'а в канале порядка 500 миллисекунд. Можно ли это побороть?

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: медленный коннект Interbase на спутниковом канале

Сообщение Dimitry Sibiryakov » 12 авг 2010, 15:03

Можно. Найти идиота, писавшего программу, и объяснить ему, что не надо кэшировать всю базу при коннекте. И вообще, что с high-latency каналами надо работать очень и очень аккуратно.

Если идиот убеждению не поддаётся - взять любой репликатор и наладить локальное зеркало.

andrewsmirnov
Сообщения: 2
Зарегистрирован: 12 авг 2010, 12:45

Re: медленный коннект Interbase на спутниковом канале

Сообщение andrewsmirnov » 12 авг 2010, 15:28

Извиняюсь, но этот идиот я... Просто навыков написания продуктов, используюших базы данных, в общем-то, нет. На локалке все работало, а вот в реальных условиях такие вот траблы.
Кстати, самостоятельно базу я не кэширую. Я так понимаю, что это могут делать используемые компоненты? И если можно, поподробнее про репликацию?

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: медленный коннект Interbase на спутниковом канале

Сообщение kdv » 13 авг 2010, 01:04

снифером Вы видите не "кэширование всей базы", а чтение Вашим приложением тучи данных. Раз сами написали, то и выясняйте, зачем ему столько данных нужно, и почему нельзя как-то меньше. Статей с описаниями работы разных компонент доступа к данным - навалом.

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: медленный коннект Interbase на спутниковом канале

Сообщение Dimitry Sibiryakov » 13 авг 2010, 13:52

andrewsmirnov писал(а):Кстати, самостоятельно базу я не кэширую. Я так понимаю, что это могут делать используемые компоненты? И если можно, поподробнее про репликацию?
Раз уж залезли в DevExpress, так хоть почитайте о том как они устроены и работают...

И что значит "поподробнее про репликацию"? Вы вообще не знаете что это или не смогли найти на этом же сайте раздел http://ibase.ru/develop.htm#repl?.. Правда, там большинство ссылок битые, но и оставшихся для начала хватит.

С другой стороны я могу не мелочиться и сразу послать на http://www.firebirdfaq.org/faq249/

Или совсем обнаглеть.

Ответить