Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
добрый день для сохранения разных php arrays которые должны использоваться разными php процессами я решил использовать функции shmop http://www.php.net/manual/ru/book.shmop.php есть несколько вопрос по теме 1. Код: php 1. - как назначается $id? если я выберу $id от 1 до 12, т е для каждого php array номер так будет нормально ? - какой смысл имеет permissions при $mode = 'a' - буду рад советам бывалых кто уже этим пользовался http://eurweb.blogspot.com - мой блог блокнот ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2014, 10:39 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
Вы понимаете, что попытка всунуть array хоть куда-нибудь обязательно приведет к вызовам serialize/unserialise и вот на это и будут тратиться основные ресурсы ? Но почему бы не воспользоваться xcache, apc и прочими кешами ? У xcache и apc нулевые "сетевые затраты". Фактически он работает поверх эти вот функций, которые вы планируете использовать. если нужно стильномодномолодежно - memcache у всех на слуху. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2014, 20:14 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
YuriyB, от 1 до 12 можно или в 16 виде. мод a означает чтение. Вы можете посмотреть здесь http://www.php.net/manual/ru/function.shmop-open.php ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2014, 22:04 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
seejil, seejilот 1 до 12 можно или в 16 виде. а почему так мало до 12 ? seejilмод a означает чтение что мода а означает чтение это понятно вот для чего там $permissions вот что непонятно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 01:10 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
netwind, netwindВобязательно приведет к вызовам serialize/unserialise ? я сделаю без serialize/unserialise netwindне воспользоваться xcache, apc и прочими кешами на это есть свои причины. было бы инетесен реальный опыт по php shmop vs shm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 01:13 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
YuriyBseejil, seejilот 1 до 12 можно или в 16 виде. а почему так мало до 12 ? потому что вам надо прочитать, например, такую книжку http://www.books.ru/books/unix-vzaimodeistvie-protsessov-23626/ А толку не очень много по сравнению с банальщиной типа memcache. Так имеет ли смысл мучатся ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 01:18 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
YuriyBnetwind, netwindВобязательно приведет к вызовам serialize/unserialise ? я сделаю без serialize/unserialise Я ожидал такого ответа. И вы уже знаете каким способом это сделаете? Как-то меня подобная идея заинтересовала и я не нашел способа. Все проанализированные мной решения использовали сериализацию в том или ином виде. авторбыло бы инетесен реальный опыт по php shmop vs shm Эти функции php копируют традиционные интерфейсы unix. Так что можете читать мануалы и книжки - их масса и даже на русском. И все описывают обычные программы на C или C++. В такой обычной программе массив это непрерывный кусок памяти. А как вы из этого куска памяти создадите массив в php, который не является в общем случае куском памяти, а некая структура из массы ссылок ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 01:26 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
YuriyB, YuriyBчто мода а означает чтение это понятно вот для чего там $permissions вот что непонятно сразу не заметил php.net/manual Замечание: Обратите внимание: Третий и четвертый параметры должны быть указаны как 0, если необходимо получить доступ к существующему участку памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 11:03 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
netwind, netwindИ вы уже знаете каким способом это сделаете? да, запишу в конфиг размер элемента(ов) array И Код: php 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 11:11 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
YuriyB, не совсем понятно. Вы собираетесь хранить в таком массиве только целые числа или строки фиксированной длины ? Ведь массив в php - это набор перекрестных ссылок туда-сюда и в непредсказуемом порядке. Он же ассоциативный. Он не такой как в C/C++/паскале и тд. Хотелось бы и мне иметь какое-то расширение "упаковывающее" массив. Таким образом, обычный код php мог бы нормально работать, при условии, что он не модифицирует массив. Такой интерфейс работал бы быстрее чем любой существующий сейчас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 11:47 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
netwind, netwindВы собираетесь хранить в таком массиве только целые числа или строки фиксированной длины ? строки фиксированной длины(ну и числа как строки) netwind"упаковывающее" массив. можно pack()/unpack() применить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 11:59 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
YuriyBnetwind, netwindВы собираетесь хранить в таком массиве только целые числа или строки фиксированной длины ? строки фиксированной длины(ну и числа как строки) ok. По-прежнему считаю, что вам было бы проще использовать xcache и apc. Скорость работы сравнима, а возни намного меньше. netwind"упаковывающее" массив. можно pack()/unpack() применить[/quot] это не о том. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 12:17 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
netwind, netwindСкорость работы сравнима, а возни намного меньше. согласен но мы не ищем простых путей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 12:41 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
netwind, netwindСкорость работы сравнима, а возни намного меньше. да зато потом будет меньше возни enduserу с установкой Чcache и будет работать там где Чcache нет и не будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 12:53 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
YuriyB, ну с такими аргументами вам вообще следовало бы использовать mysql и не выпендриваться shmop тоже может быть выключена. вот я быстренько пробежался по списку phpinfo крупных хостеров: bluehost - есть reg.ru - есть nic.ru - нет агава - нет timeweb -нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 13:16 |
|
||
|
(PHP) Управление разделяемой памятью
|
|||
|---|---|---|---|
|
#18+
netwind, Это - не аргумент. Меня тоже как-то просили чё-то написать под шмоп. Если хостинг свой (только под юниксом), и доступ к серверу, как к себе домой, то почему бы и нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 14:00 |
|
||
|
|

start [/forum/topic.php?fid=23&fpage=95&tid=1463114]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 386ms |

| 0 / 0 |
