Возможно ли совместное использование таблицы памяти между различными сеансами PHP?

#php #mysql #sql #memory

#php #mysql #sql #память

Вопрос:

Например, в MySQL и PHP, когда создается таблица памяти, она будет уничтожена в конце сеанса, что означает, что другой пользователь не может совместно использовать и получать доступ к той же таблице памяти, что и предыдущий пользователь.

Есть ли решение для этого? (Пожалуйста, без HTML-кэша :))

Комментарии:

1. Вместо этого используйте обычную таблицу?

2. Не могли бы вы привести пример того, что вы хотите сделать? Я на 100% уверен, что есть другой способ сделать то, к чему вы стремитесь.

3. @Pekka я хочу использовать таблицу памяти, потому что большинство операций над ней доступны только для чтения. поэтому я могу загрузить ее в память только один раз.

4. @Juhana только мой модуль администратора изменяет таблицу, а все остальные пользователи интерфейса находятся в режиме только для чтения, поэтому я хочу ускорить процесс

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

Ответ №1:

MEMORY Движок MySQL хранит данные в памяти (ОЗУ). Это не имеет никакого отношения к тому, какой процесс PHP подключен к MySQL. Это ДВИЖОК MySQL, поэтому — если вы подключаетесь к MySQL, у вас есть доступ к данным, хранящимся в MEMORY движке. После перезагрузки MySQL данные, хранящиеся в MEMORY движке, теряются.

С другой стороны, существуют временные таблицы. Временные таблицы основаны на сеансах (конечно, на основе сеанса MySQL, а не на PHP). Как только сеанс заканчивается, таблица теряется.

Вопрос в том, какого черта вы пытаетесь сделать и почему вы постоянно путаете имена? Опишите, к чему вы стремитесь с помощью этих последних нескольких вопросов, и пусть более опытные люди прямо скажут вам, что вам нужно делать.

Комментарии:

1. я ошибаюсь между «временной таблицей» и «таблицей памяти»?

Ответ №2:

В PHP есть множество действительно хороших решений для обмена данными между скриптами — например, текстовый файл, база данных, APC, memcache, база данных nosql.

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