Перейти к содержанию

Рекомендуемые сообщения

И тут вы подумали, что тут сформированный гайд по подключению сборки  15512 к memcache.

 

А нет.. Перечитал все темы на форуме с 2011 года, кто-то то дописал, кто-то сё и нигде нет ни модуля, ни инструкции.

 

 

 

ИЩУ рабочий гайд по подключению memcached с хостинга на сборку 15112 ревизии.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 вопрос открыт, ищу решение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если это версия 2 скажем,

то

1) скачиваем memcached.zip с сайта опенкарта https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=23645 распаковываем и memcached.php помещаем в каталог system/library/cache

2) полагаем, что memcached сервер в Linux системе работает с параметрами:

(как посмотреть в консоли)

scard@debian:$ ps aux|grep cache
memcache   461  0.0  0.1  53836  7820 ?        Ssl  Dec27   0:03 /usr/bin/memcached -m 128 -p 11211 -u memcache -l 127.0.0.1
scard     4183  0.0  0.0   5656   184 ?        Ss   Dec27   0:02 /usr/bin/gpg-agent --sh --daemon --write-env-file /home/scard/.cache/gpg-agent-info
scard    24291  0.0  0.0   5036  2260 pts/5    S+   00:13   0:00 grep cache

 

Видим, что тут все стандартно: порт 11211 и локальный сервер, памяти на кэш выделено 128Мб

 

3) Пропишем параметры кэша в кофиг (в любом месте config.php и admin/config.php но с точки зрения эстетики - пишем в конец файла)

// CACHED
define('CACHE_DRIVER', 'memcached');
define('CACHE_HOSTNAME', 'localhost');
define('CACHE_PORT', '11211');
define('CACHE_PREFIX', 'occ_');

 

4) Укажем опенкарту кэш по умолчанию. Для этого поправим файл system/config/default.php

$_['cache_type']           = 'memcached'; // 'file'; // apc, file or mem

 

Вот в сущности и все. После внесения изменений в файлы, проведем их сохранение и ваш опенкарт дружит с memcached

 

Изменено пользователем scard

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
45 минут назад, scard сказал:

Если это версия 2 скажем,

то

1) скачиваем memcached.zip с сайта опенкарта https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=23645 распаковываем и memcached.php помещаем в каталог system/library/cache

2) полагаем, что memcached сервер в Linux системе работает с параметрами:

(как посмотреть в консоли)

scard@debian:$ ps aux|grep cache
memcache   461  0.0  0.1  53836  7820 ?        Ssl  Dec27   0:03 /usr/bin/memcached -m 128 -p 11211 -u memcache -l 127.0.0.1
scard     4183  0.0  0.0   5656   184 ?        Ss   Dec27   0:02 /usr/bin/gpg-agent --sh --daemon --write-env-file /home/scard/.cache/gpg-agent-info
scard    24291  0.0  0.0   5036  2260 pts/5    S+   00:13   0:00 grep cache

 

Видим, что тут все стандартно: порт 11211 и локальный сервер, памяти на кэш выделено 128Мб

 

3) Пропишем параметры кэша в кофиг (в любом месте config.php и admin/config.php но с точки зрения эстетики - пишем в конец файла)

// CACHED
define('CACHE_DRIVER', 'memcached');
define('CACHE_HOSTNAME', 'localhost');
define('CACHE_PORT', '11211');
define('CACHE_PREFIX', 'occ_');

 

4) Укажем опенкарту кэш по умолчанию. Для этого поправим файл system/config/default.php

$_['cache_type']           = 'memcached'; // 'file'; // apc, file or mem

 

Вот в сущности и все. После внесения изменений в файлы, проведем их сохранение и ваш опенкарт дружит с memcached

 

 

Вы сами поняли что вы написали?

2.x поддерживает memcache нативно!

Достаточно установить его на сервере и прописать конфиги!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От gid
      на сервере стоит ssd диск, поставил memcached сервер, но как мне показалось скорость загрузки стала на 100-200 мс дольше
      такое возможно, или просто неправильно настроен memcached?
      и не конфликтует ли это с стандартным кэшированием включенным в mysql
      кто что думает?
    • От NemoTec
      Итак, пока что опишу сумбурно. Завтра загляну и допишу. Если создал не там - простите, не нашел куда.
      Имеется "сервак" всё лежит на ноутбуке :'( следующей конфы:
      Для тех, кому интересно
      CPU: Intel Pentium Dual-Core T3400 @ 2.0 Ghz
      MainBoard: Intel PM45 Express
      RAM: 3 Гбайт DDR2 @ 800 Mhz
      HDD: WD 320 Гбайт @ 5400 об./мин
      Всё настроено по инструкции "Идеальный сервер - Ubuntu 11.04 [iSPConfig 3]"+ я поставил memcache, nginx, eaccelerator...
      Долгое время юзал memcache+nginx и был доволен, но сегодня в "заду" загорелось и решил поискать я что-то эдакое. Эдаким оказалась TMPFS. В кратце - это файловая система, целиком сидящая в RAM, отличия от RAMFS в том, что RAMFS может динамично увеличиваться, пока не "съест" всю память и не использует swap (если я всё правильно понял).
      Короче, заинтересовался я и начал рыть. Нашел вот этот пост. В нём меня дико заинтересовала фраза:
      Теперь вопрос:
      Как это всё настроить так, чтобы всё было прозрачно? То есть чтобы при создании сайта или базы в ISPconfig они ложились в TMPFS раздел, который бы монтировался при включении и сохранялся при выключении.
      Попробовал - получилось. Перенёс сайт на Opencart, но на глаз не сильно понял что же поменялось... Подумал, подумал и решил, что виновата база. Рискнул и перенёс всю папку /var/lib/mysql
      Итог - всё просто летает. Изменений в fstab не вносил, то есть при ребуте всё сотрётся и надо будет монтировать и переносить опять.
      Продолжая рыть нашел такой пост. В нём уже гораздо интересней, так как есть возможность:
      Теперь вопрос:
      Как это всё настроить так, чтобы всё было прозрачно? То есть чтобы при создании сайта или базы в ISPconfig
      они ложились в TmPFS раздел, который бы монтировался при включении и сохранялся при выключении.
      Я знаю что:
      1. У меня в есть около 1,5гб свободной оперативы.
      2. Есть /var/www
      3. Сайты, которые там лежат вместе с базами, спокойно уместятся в 1,5гб
      Ну что, попробуем?! 
       
      ================================UPDATE================================
      MySQL в TMPFS
      Итак, только что у меня получилось завести MySQL в TMPFS. Я делал это на Ubuntu 13.04
      Всё делалось с помощью статей, приведённых в первом посте, и методом тыка. Так что любые дополнения и улучшения приветствуются.
       
      1. Первым делом создаём две директории: "mysql_tmp" - рабочая папка MySQL в TMPFS и "mysql_arch" - папка для сохранения на жестком диске.
       
      mkdir /var/lib/mysql_tmp mkdir /var/lib/mysql_arch 2. Далее назначаем владельца рабочей папки, и делаем её доступной для записи
      chown mysql:mysql /var/lib/mysql_tmp/tmp/mysql_tmp chmod 777 -R /var/lib/mysql_tmp 3. Копируем файлы из нынешней рабочей папки, в новую (TMPFS).
      rsync -a /var/lib/mysql/ /var/lib/mysql_tmp/ rsync -a /var/lib/mysql/ /var/lib/mysql_arch/ 4. Чтоб при включении перенести файлы из mysql_arch в mysql_tmp добавил в /etc/init.d/rc.local команду "rsync -a /var/lib/mysql_arch/ /var/lib/mysql_tmp/":
      nano /etc/init.d/rc.local И допишите в конец файла
      rsync -a /var/lib/mysql_arch/ /var/lib/mysql_tmp/  
      5.Теперь нужно-же сохранять изменения в mysql_arch при выключении сервера.
      Тут немного сложнее. В /etc/init.d кидаем файлик такого содержания:
      #!/bin/sh rsync -a /var/lib/mysql_tmp/ /var/lib/mysql_arch/ exit 0 Обзываем S00ramdisk-sync-shutdown и ставим права на выполнение.
      nano /etc/init.d/ramdisk-sync-shutdown #Вставляем содержимое chmod 7777 /etc/init.d/S00ramdisk-sync-shutdown Теперь в папку /etc/rc0.d и /etc/rc6.d делаем символические ссылки с нашего файла: S00ramdisk-sync-shutdown. 
      ln -s /etc/init.d/S00ramdisk-sync-shutdown /etc/rc0.d ln -s /etc/init.d/S00ramdisk-sync-shutdown /etc/rc6.d Все, теперь при выключении или перезагрузке содержимое нашего TMPFS будет сохранено на HDD в mysql_arch.

      6. Ну и на последок не забываем про форсмажор - добавим задание в cron, чтобы копирование происходило каждых 20 минут.
      crontab -e и в конец файла вставить:
      */20 * * * * rsync -a /var/lib/mysql_tmp/ /var/lib/mysql_tmp_arch/ 7. Теперь осталось добавить монтирование в fstab
      nano /etc/fstab Добавить в конец
      tmpfs /var/lib/mysql_tmp tmpfs size=1024m 0 0 8. Теперь окончательно - поменяйте рабочий путь в файле конфигурации MySQL my.cnf
      nano /etc/mysql/my.cnf В секции "datadir = /var/lib/mysql_tmp"

      Итак, вроде бы всё работает. Пока так и не понял насколько помогло - только обновил сервер, сайты ещё не перенёс, поэтому пока сказать не могу.
      Если вдруг после ребута mysql откажется запускаться - попробуйте дать права на папку повторно.
      chown mysql:mysql /var/lib/mysql_tmp/ chmod 777 -R /var/lib/mysql_tmp
    • От Dimtos
      ocStore
      Version 1.5.1.3

      Сервер VPS :

      Процессор
      Intel® Core™ i7 CPU 920 @ 2.67GHz 1600.000 Mhz X 4
      Оперативная память
      1048576 kB
      Файл подкачки (swap)
      0 kB
      Размер дискового пространства
      25600 Mb



      Проблема с выгрузкой товара в yml файл:
      Товаров 20.000 шт, при запросе на урл файла север загружается на 100% и файл генерится в 7 Мб где-то за 5 минут и потом всё это героически пытается залезть в Memcache.

      Результат файл отгружается но с ошибкой в самом начале: Notice: MemcachePool::set() [memcachepool.set]: Server 127.0.0.1 (tcp 11211, udp 0) failed with: SERVER_ERROR object too large for cache (3) in/var/www/admin/data/www/opencart.mir4asov.ru/system/library/cache.php on line 68
      Подскажите как с этим бороться???

      Ссылка на yml: http://opencart.mir4...d/yandex_market
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.