Мыльный вызов занимает много времени

Я работаю над веб-сервисом, посвященным модулю prestashop, который занимает много времени.
Веб-сервис возвращает стоимость доставки при каждом вызове, поэтому, если у меня есть 4 транспортера, prestashop делает 8 вызовов (4 для блочной корзины и 4 для получения стоимости доставки на странице заказа).
Есть ли решение, чтобы сократить это время? как использовать, используя статическую переменную.
Я попытался кэш, но безрезультатно, потому что wsdl уже на моем сервере.

0

Решение

Вы должны кэшировать результаты веб-сервисов для повышения производительности:

        if (Cache::isStored('unique-id-for-your-module-and-request-result-' . Tools::jsonEncode($request_params)))
{
$shipment_options = Cache::retrieve('unique-id-for-your-module-and-request-result-' . Tools::jsonEncode($request_params));
}
else
{
$shipment_options = $api_or_soap->getEstimateCost($request_params);
if ($shipment_options)
Cache::store('unique-id-for-your-module-and-request-result-' . Tools::jsonEncode($request_params), $shipment_options);
}

Удачи

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector