Ранее я разрабатывал веб-приложения на Java (Spring, Spring Boot), где я храню большой объем данных, кэшируемых в памяти, чтобы значительно повысить эффективность и число одновременных пользователей, которые могут поддерживаться, но мне трудно понять, как работает приложение PHP. можно добиться того же?
Есть ли глобальный способ сделать это, или это лучший эквивалент с использованием переменных сеанса?
PHP — это одностраничный язык (если мы говорим о WEB).
Посмотри на это http://php.find-info.ru/php/016/ch20lev1sec5.html и это http://www.slideshare.net/laruence/the-php-life-cycle
Если вам нужно хранить много данных, кэшируемых в памяти в режиме реального времени (например, без выполнения запросов в БД каждый раз (каждый запрос)), вам необходимо использовать некоторое хранилище на основе памяти, которое будет поддерживать постоянное соединение в вашем коде.
Кроме того, будьте осторожны, когда будете использовать много данных в переменных php, сборщик мусора работает хорошо, но только для небольших запросов. смотреть на unset()
Выражение, для принудительной очистки кучи.
Простите за английский 🙂
Это зависит от вашего требования. Если бы я был на вашем месте, я бы предпочел REDIS, который является прерывателем сделок для одновременной базы данных в реальном времени
Ниже может быть ваш случай использования
Вы можете создать свой собственный класс кеша и использовать его (синглтон-класс может быть другим решением).