Показать сообщение отдельно
  #1 (permalink)  
Старый 07.11.2010, 14:25
Интересующийся
Отправить личное сообщение для lliberty Посмотреть профиль Найти все сообщения от lliberty
 
Регистрация: 12.03.2009
Сообщений: 14

AJAX и время запросов
Небольшое описание системы:
1. Имеется сервер и клиент. Взаимодействие через AJAX
2. Пинг до сервера пусть будет 70мс
3. Время выполнения скрипта 5мс

Если запрос происходит через GET, то данные с сервера приходят через 75-80мс. Проблема в том, что используются запросы POST (т.к. серверу для работы необходимо отправить 1-2кб данных, которые сейчас хранятся у клиента), и тогда данные с сервера приходят уже через 150-160мс (из-за отправки двух пакетов при POST (заголовок и сами данные) вместо одного).

Заказчик проекта считает что раз пинг до клиента 70 мс, то и данные он должен получать за примерно такое же время, но никак не в 2-2,5 раза дольше. В чем-то он прав, т.к. проект связан с веб-доступом к удаленной СУБД и время тут критично.

Я сейчас прикинул 2 варианта:
1) Берем данные клиента (в JSON), сжимаем их LWZ, затем переводим в Base64. Подставляем в адресную строку и отправляем как GET запрос. Минимум изменения кода как на стороне клиента так и на сервере. Опасность, влезет ли даже такой сжатый запрос в GET...
2) Хранить сами данные клиента на сервере (Memcached). На действия клиента формировать небольшие GET запросы (добавил/изменил/удалил часть запроса). Но, тут необходимы серьезные изменения в логике работы как серверной, так и клиентской частей.

Собственно вопрос к опытным программерам, может можно еще как-то загнать "большой" запрос в GET (сессии? Coockies? ???) ? Я согласен что вариант (2) более оптимален, но хотелось обойтись "малой кровью", а не переписывать пару мегабайт PHP и JS текстов...

Последний раз редактировалось lliberty, 07.11.2010 в 14:27.
Ответить с цитированием