Трафик Firebird

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
Mikael
Сообщения: 9
Зарегистрирован: 01 мар 2005, 11:24

Трафик Firebird

Сообщение Mikael » 01 мар 2005, 11:38

День добрый.

Меня давно мучает один вопрос, решил задать его на форуме.
Используемая конфигурация:
Сервер - Firebird 1.5.1 (сначала под Linux, теперь под Windows)
Клиент - Delphi приложение (FibPlus)
Транспорт - Zebedee

Запуская программу через DilaUp или GPRS отмечаю что даже запрос возвращающий пустой набор данных открывается долго и при этом обмен идет двусторонний (прием/передача) причем примерно в равных долях. Ту же ситуацию наблюдаю и в локальной сети. Т.е. траффик примерно в 2-3 раза больше реально передаваемых данных.
Предполагаю что именно из-за этого скорость работы по медленным каналам довольно низкая. Причем переход на 2-х процессорный сервер (Xeon) + 2Гб памяти особенно не улучшил ситуацию.

Что это может быть? Какие-то подтверждения пакетов или есть какая-то настройка чтобы изменить ситуацию?

Заранее благодарен

eugeney
Сообщения: 79
Зарегистрирован: 29 окт 2004, 18:51

Re: Трафик Firebird

Сообщение eugeney » 01 мар 2005, 11:58

Mikael писал(а):День добрый.

Меня давно мучает один вопрос, решил задать его на форуме.
....
Ту же ситуацию наблюдаю и в локальной сети. Т.е. траффик примерно в 2-3 раза больше реально передаваемых данных.
...
Что это может быть? Какие-то подтверждения пакетов или есть какая-то настройка чтобы изменить ситуацию?

Заранее благодарен
Все это не оптимальный вариант реализации транспортного протокола. Это есть в задачах на улучшение сервера. Пока с этим прийдется смириться, ZeBeDe вроде нормально поднимает скорость передачи. Если тебе критично попробуй использовать препарированные запросы, это тожу уменьшает трафик.

Mikael
Сообщения: 9
Зарегистрирован: 01 мар 2005, 11:24

Сообщение Mikael » 01 мар 2005, 12:24

Спасибо за ответ. Запросы и так препарированные. Сам этот процесс и тормозит. Потом вроде бы немного лучше работает. Будем ждать новых версий сервера.

eugeney
Сообщения: 79
Зарегистрирован: 29 окт 2004, 18:51

Сообщение eugeney » 01 мар 2005, 14:29

Mikael писал(а):Спасибо за ответ. Запросы и так препарированные. Сам этот процесс и тормозит. Потом вроде бы немного лучше работает. Будем ждать новых версий сервера.
Ты на чем пишеш ? Могу порекомендовать использовать пул запросов, чтобы запрос повторный раз не препарировался. Или если у тебя запросы препарируются, то организуй повторное использование чтобы он освобождался только по закрытию приложения.

NVlad
Сообщения: 2
Зарегистрирован: 28 окт 2004, 11:12

Re: Трафик Firebird

Сообщение NVlad » 29 мар 2005, 10:26

Mikael писал(а):День добрый.

Запуская программу через DilaUp или GPRS отмечаю что даже запрос возвращающий пустой набор данных открывается долго и при этом обмен идет двусторонний (прием/передача) причем примерно в равных долях. Ту же ситуацию наблюдаю и в локальной сети. Т.е. траффик примерно в 2-3 раза больше реально передаваемых данных.
Что это может быть? Какие-то подтверждения пакетов или есть какая-то настройка чтобы изменить ситуацию?
FIBPlus TpFIBDataSet по умолчанию при открытии запроса тянет большое кол-во разной инфо (структура таблиц, полей, default values, domains ets).
Рулить этим можно (а в случае медленных каналов и обязательно НУЖНО) через DataSet->Options, DataSet->PrepareOptions. Возможно в последних фибах появилось что-то еще (у меня версия 5.2).

Более общий подход - включить монитор и потратив некоторое время понять, какие операции с компонентами грузят канал.

Ответить