Самая быстрая передача данных PHP

Во-первых: извините за мой английский, это не мой основной язык.

У меня есть приложение, которое получает запросы от клиентов, а затем ищет данные в базе данных для представления результатов. Приложение состоит из двух частей. ЧАСТЬ ПЕРВАЯ получает запросы клиентов, а затем использует cUrl для связи с ЧАСТЬЮ ВТОРОЙ, которая ищет правильные данные результатов. Что мне нужно улучшить (с точки зрения скорости), так это часть cUrl. Он был разработан таким образом, что если вся ЧАСТЬ ВТОРАЯ будет перемещена на другой сервер, соединение между ЧАСТЬЮ ПЕРВОЙ и ЧАСТЬЮ ВТОРОЙ будет работать. Вот почему ЧАСТЬ ПЕРВАЯ не может получить прямой доступ к базе данных. Для соединения ЧАСТЕЙ до сих пор использовался CURl. Я пытался использовать SOAP, но с точки зрения скорости улучшения нет. Я нашел такие вещи, как RMI или Cobra, но они для Java. И у нас уже есть кеш в базе для снижения скорости поиска.

И вопрос: есть ли что-то более быстрое, чем cUrl и Soap? Отправка данных всегда будет только строками, а не файлами.


person Aleksander    schedule 06.06.2011    source источник
comment
По моему опыту, cURL — это довольно упрощенный HTTP-клиент. Вы уверены, что узкое место находится в пересылке данных (cURL), а не в ожидании ответа от сервера (часть вторая)? (И у вас есть фактические измерения, или это просто ваше внутреннее ощущение?) Кроме того, насколько далеко друг от друга находятся первая и вторая части с точки зрения сети?   -  person Piskvor left the building    schedule 06.06.2011
comment
Я проверил, что быстрее, сделав 1000 случайных запросов. И дело не в том, что SOAP медленнее, просто результаты достаточно похожи, поэтому переход с cUrl на SOAP не будет иметь большого значения. Что касается сети, ЧАСТЬ ПЕРВАЯ и ВТОРАЯ пока находятся на одном сервере, но ЧАСТЬ ВТОРАЯ вскоре будет перемещена. Клиент никогда не подключается к ЧАСТИ ВТОРОЙ. ЧАСТЬ ПЕРВАЯ функционирует как соединитель/мост между клиентом и базой данных. Я также начал искать способы сжатия данных.   -  person Aleksander    schedule 06.06.2011
comment
@Aleksander: Моя точка зрения: действительно ли передача данных (cURL или SOAP) замедляет работу или ожидание ответа сервера (из второй части) является основной причиной ожидания? Похоже на то, что изменение методов передачи не дало вам особых улучшений.   -  person Piskvor left the building    schedule 06.06.2011
comment
Если это так, то пока ВТОРАЯ ЧАСТЬ не будет перенесена на другой сервер, я не буду знать наверняка. Так что время покажет. Спасибо.   -  person Aleksander    schedule 06.06.2011
comment
@Aleksander: На самом деле, такие инструменты, как Fiddler или Firebug, сообщат вам, какая часть запроса тратится на загрузку / загрузку материала, а какая тратится на ожидание ответа сервера. Это должно дать вам некоторые данные.   -  person Piskvor left the building    schedule 06.06.2011
comment
0_о. Firebug действительно имеет такую ​​функцию. Не знал об этом. :) Большое спасибо.   -  person Aleksander    schedule 06.06.2011


Ответы (1)


SOAP всегда будет иметь накладные расходы, связанные с необходимостью анализа XML, и, вероятно, создание и уничтожение вашего анализатора мыла с использованием простого REST Api с переменными GET или POST, вероятно, будет немного быстрее.

person preinheimer    schedule 06.06.2011
comment
Не знал про REST. Рассмотрю это. Спасибо за совет :) - person Aleksander; 06.06.2011