Intereting Posts
Как преобразовать таблицу parent-child (смежность) в вложенный набор с использованием PHP и MySQL? Отобразить элемент, выбранный конкретным пользователем на странице состояния для этого конкретного пользователя. Эффективная перезагрузка данных / передача данных с сервера на клиент Доступ к сеансу между доменом / субдоменом. Локальная установка xampp Есть ли эквивалент в C ++ функции PHP в explode ()? Это хорошая идея использовать $ _SERVER в составе? Создание динамического изображения PNG MySql PHP выбирает количество различных значений из данных, разделенных запятыми (теги) Проблемы с php cURL Использование действия формы HTML с php-скриптом, находящимся в другом каталоге (относительные пути) Как преобразовать элементы в массив в строку, разделенную запятой, в PHP? Вывести соединение mysql в другой класс Поиск внутри сериализованных данных с помощью MYSQL как разрешить дублирование ключей в php-массиве Устанавливает ли безопасное разрешение для доступа к папке 777?

Кэширование массива PHP

Моя проблема заключается в создании большого вложенного массива PHP, который анализирует информацию из нескольких внешних источников.

При первом возврате я хотел бы кэшировать эти данные.

Я довольно новичок в кешировании, поэтому не знаю, что я должен искать, любые хорошие или плохие методы или даже если это обычная практика! Иметь googled, но не нашел ничего приличного для кеша noob.

Я уже использую smarty для кэширования содержимого моей страницы (исключая динамические биты), исправления apache, сокращения и т. Д., Чтобы повысить производительность, но загрузка страницы по-прежнему далека. Иногда до 8 секунд!

Использование PHP5 с Smarty. Использование cURL для анализа XML, который затем сохраняется в массиве.

Вы можете попытаться кэшировать файл:

file_put_contents("cache_file", serialize($myArray)); 

Затем загрузить кеш:

 $myArray = unserialize(file_get_contents("cache_file")); 

Это будет работать, если вещи в вашем массиве будут сериализованы: нет подключений DB или файлов, или таких вещей. Строки и числа в порядке.

Если вам что-то нужно, вы можете использовать кеш памяти, такой как memcached.

вы думали о статическом $ yourData = array (); в вашем методе, где вы загружаете данные, затем проверяете, являются ли какие-либо данные в этом статическом массиве и используют ли они, перегружая данные? надеюсь, это поможет в некотором роде: D

Если вы используете механизм шаблонов Smarty , в нем есть плагин для v3.1, который позволяет использовать APC (Alternate PHP Cache) в качестве кеша op-кода, у вас также есть встроенная память для быстрого доступа к данным.

Доступно здесь: https://www.smarty.net/forums/viewtopic.php?p=86501&sid=efc098e0cfb090a94e8c0d362c609263#86501