Как в PHP использовать общие переменные

12
[Удален]
#11

вывод ветки :)

если нужен доступ к данным на сервере из разных скриптов и из разных процессов (перевел на человеческий первый пост), есть несколько выходов:

1. файловое хранилище

2. доступ через СУБД

3. хранилище в памяти (memcashed, свой демон, как рекомендовали выше)

зы: причем тут асп к пхп? в асп одно приложение запускается, которое обрабатывает все запросы пользователей. в пхп приложение каждый раз заново открывается, при новом запросе...

зыы: приемлимость в обратном порядке перечисления :)

BoyStav
На сайте с 10.11.2006
Offline
182
#12

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

edogs software
На сайте с 15.12.2005
Offline
775
#13
Лунный Кот:
Кроме БД и файла, никак не сохраните для нескольких разных пользователей переменную.

Если навсегда, то да. А так, кто мешает использовать shmop или memcached ? Не у всех хостеров конечно стоит, но тем не менее. А если свой сервер, то имхо вообще грешно без хотя бы одного из подобных плагинов обходиться.

Лунный Кот:
И файловые функции работают, как принято считать, медленнее MySQL.
Лунный Кот добавил 28.01.2009 в 01:07
Флаг в руки. Храните переменную в параллельном измерении.

Хе. Сначала Вы говорите что файлы работают медленнее, потом тут же иронично советуете хранить переменную в "параллельном измерении". А по Вашему MySQL где-то в параллельном измерении хранит данные?:) В тех же самых файлах она их и хранит, только интерфейс доступа к ним понавороченнее, за счет этого "при прочих равных" mysql как раз помедленнее, если речь идет о простых операциях.

BoyStav:
чтобы развеять некоторую непонятность, файл всегда быстрее субд для хранения простых данных.

"При прочих равных" согласны абсолютно.

Но на практике не всегда. Тут надо учесть, что у некоторых хостеров mysql работает на отдельном сервере, а не на том же самом. Или хотя бы на отдельном диске. Тут как бы причину не надо думаем объяснять (грубо говоря, на сервере с вебсервером может быть 1000 грузящих сайтов на одном сата диске, а на сервере с мускулом может быть 10 баз на скази в рейде:) )? Просто этот момент надо учитывать, когда делается кэширование на диск. Потому что иногда его, как ни странно, действительно быстрее делать в базу.

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
BoyStav
На сайте с 10.11.2006
Offline
182
#14
edogs:
"При прочих равных" согласны абсолютно.
Но на практике не всегда. Тут надо учесть, что у некоторых хостеров mysql работает на отдельном сервере, а не на том же самом. Или хотя бы на отдельном диске. Тут как бы причину не надо думаем объяснять? Просто этот момент надо учитывать, когда делается кэширование на диск. Потому что иногда его, как ни странно, действительно быстрее делать в базу.

любая синдицированная выборка нагнет отдельный винт так, что вебсервер на другом винте покажется невинной игрушкой :)

в общем то я с вами согласен, но предпочел бы в таком порядке мемкэш - файл - мускул :)

N
На сайте с 06.05.2007
Offline
419
#15

edogs, ну например, мешает то, что при использовании этих расширений хранится копия значения. По крайней мере если я хочу хранить массив. Смысл несколько другой. Если этот массив очень большой - получается огромный перерасход памяти, да и перекачка через сокеты не самая быстрая операция.

Что рассказывают на курсах о настоящих разделяемых массивах в php ?

Кнопка вызова админа ()
RAS
На сайте с 27.11.2005
Offline
126
RAS
#16

sharedance, memcached, свое что-то и что-то еще было с такой фичей.

Администрируем сервера, впс, вдс. Ускоряем загрузку сайтов - DLE, Word Press, Joomla, Modx... Настраиваем безопасность. Ручная чистка rootkit/malware/вирусов. (/ru/forum/867860) Разработка - shell/bash/sh/python/perl.
N
На сайте с 06.05.2007
Offline
419
#17

RAS, все это обычные пвсевдо-кешеры по ключу, которые копируют данные к себе.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий