Теория, как сократить объём трафика по сети, Что-то вроде дельта кодирования.. |
Здравствуйте, гость ( Вход | Регистрация )
Теория, как сократить объём трафика по сети, Что-то вроде дельта кодирования.. |
512es |
17.1.2012, 18:28
Сообщение
#1
|
Участник Группа: Участник Сообщений: 135 Регистрация: 31.10.2008 Пользователь №: 407 Спасибо сказали: 5 раз(а) Репутация: 0 |
Доброго времени суток!
Упрошённая схема: Имеется 2 компьютера, клиент и сервер. Клиент достаточно часто запрашивает одни и те же данные (QByteArray) у сервера. Объём данных будем считать относительно большим. Иногда данные могут незначительно меняться. Задача: Максимально сократить объём трафика между клиентом и сервером. Возможно запоминание последних отданных данных клиенту на стороне сервера и последних принятых данных клиентом на стороне клиента. Сейчас используется qCompress. Заметный выигрыш в размере пакетов, но всё равно, теоретически, можно посылать только различия между новым и предыдущим QByteArray + хеш, указывающий на то, какие данные были использованы при сравнении (на всякий случай, для коррекции ошибок). Смотрю в сторону Delta кодирования. Но помоему это немного не то, или я просто не умею его использовать. Как его адаптировать для сравнения двух массивов данных? |
|
|
zloiia |
19.1.2012, 7:04
Сообщение
#2
|
Студент Группа: Участник Сообщений: 25 Регистрация: 5.5.2011 Пользователь №: 2655 Спасибо сказали: 5 раз(а) Репутация: 0 |
Быть может немного не в тему, но может не стоит изобретать велосипед и просто попробовать данные упаковать? Например тем-же самым QByteArray::qCompress[\url] ? А если уж в упор хочется diff иметь, то может стоит посмотреть в сторону [url=http://code.google.com/p/google-diff-match-patch/]google-diff-match-patch
Быть может немного не в тему, но может не стоит изобретать велосипед и просто попробовать данные упаковать? Например тем-же самым QByteArray::qCompress ? А если уж в упор хочется diff иметь, то может стоит посмотреть в сторону google-diff-match-patch PS: господа модераторы, грохните мое предыдущее сообщение, если не трудно. накосячил с разметкой |
|
|
Текстовая версия | Сейчас: 1.12.2024, 3:28 |