2013-11-08 4 views
1

У меня есть сайт php, jquery, сайт электронной коммерции с заголовком, в котором, когда документ готов, я делаю вызов ajax, чтобы получить верхние изображения и описание каждой категории в меню.Перформанс меню верхнего уровня - mysql или json

верхние изображения не будут подвергаться ежедневным изменениям, поэтому я могу сохранить результат в json-файле и тем самым я бы не стал использовать коннектор mysql на каждой странице.

(но я должен сделать страницу, когда администратор электронной коммерции делает обновление, которое обновляет файл JSon)

мой вопрос: стоит ли? есть ли другая альтернатива, например, хранить входящий вызов ajax в кеше?

благодарит

+0

Что именно вы отправляете в ответ JSON? URL-адреса изображений? содержимое изображения в base64? что-то другое? Просьба привести пример ... – ProGM

+0

@ProGM его единственный url. Пример: { mulher/toucados: "SPOT_2013.jpg # Toucados # Toucado de sisal oval com aplicação de véu e laço. Pode ser fabricado por pedido em qualquer outra cor." } – pedrolopes10

ответ

0

Вы можете создать таблицу базы данных и сохранить в кэше версию на стороне сервера ответ JSON, обновления после каждого обновления (вручную или с каким-либо способом управления версиями)

Пример:

PHP (псевдокод):

if (is_JSON_changed()) //some mechanism to check if the cache is not valid 
{ 
    $query = Get infos from DB; 
    $array = convert $query to array; 
    $string = json_encode($array); 
    file_put_contents("/tmp/cache.json", $string); 
    echo $string; 
} else { 
    file_get_contents("/tmp/cache.json"); 
} 

Вы можете, кроме того, использовать HTTP заголовки кэша: How to use HTTP cache headers with PHP

+0

Я думаю, что это путь, спасибо – pedrolopes10

Смежные вопросы