латентность сети, тормоза в приложении

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
alexander_samokhin
Сообщения: 1
Зарегистрирован: 27 июн 2008, 14:58

латентность сети, тормоза в приложении

Сообщение alexander_samokhin » 27 июн 2008, 16:06

Суть проблемы в следующем. Есть БД на Yaffil которая находится в главном офисе, ней подключаются клиенты из отделений через VPN (10Мбит), клиенты написаны на компонентах IBDAC. Архитектура двухзвенная.
Иногда заметны тормоза в клиентском приложении. Исследования показали что большое влияние оказывает латентность сети (гораздо большее чем пропускная способность). При задержках 3-5 мс всё работает нормально, при ~20 мс заметно что приложение работает более чем в два раза медленнее (в зависимости от операций).
Вопрос. Можно ли уменьшить влияние латентности на производительность без глобального переписывания приложения: например настройкой tcp, сервера и т.д.. Имеет ли смысл перейти на Firebird/InterBase что это даст. Рассчитан ли протокол InterBase на работу через Internet.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 27 июн 2008, 16:15

В версии Firebird 2.1 даже какие-то оптимизации протокола были на этот счёт.
Но определённо ответить, в Yaffil дело или в настройках сети, я не могу. Не специалист.

Ivan_Pisarevsky
Заслуженный разработчик
Сообщения: 644
Зарегистрирован: 15 фев 2005, 11:34

Re: латентность сети, тормоза в приложении

Сообщение Ivan_Pisarevsky » 30 июн 2008, 10:00

alexander_samokhin писал(а): Рассчитан ли протокол InterBase на работу через Internet.
На самом деле все есть в документации на этом сайте... как-то зибиди(опенвпн с компрессией), терминал сервер на одной площадке с SQL сервером, шлифовка приложения для минимизации трафа, переход на трехзвенку/вебинтерфейс. Просто "в лоб" двухзвенка на длинном пинге конкретно дохнет, особенно старые версии до 2.1

На самом деле 20мс это фигня, у меня есть одна небольшая приклада, так на таком пинге вполне работает, только подрихтовал маленько, чтоб лишний траф на клиента не тянула, нормально. Вот если пинг 400 мс...

Ответить