Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Memcached замена текстовых файлов кэша.


l.slava

Recommended Posts

Привет всем.В очередной раз решил заняться снижением нагрузки в магазине, так как товары добавляются (сейчас почте 50 тыс.), одно из узким мест это кэширование информации в текстовые файлы system/cache/, а так как товаров и категорий много решил использовать модное на сегодня решение nosql в виде memcachedb.Изменил в system/library/cache.php на работу в memcachedb.Итого, сайт заработал немного быстрее. Раньше при открытии страницы была задержка около 4-5 сек, сейчас ее практически нету.Есть у кого-то опыт по внедрению Memcached?

Надіслати
Поділитися на інших сайтах


  • 11 months later...

тоже интересует вопрос снижения нагрузки, товаров 800, но процессор грузит на 11-15% в сутки, даже не знаю, что делать. я так понимаю для memcashe нужен отдельный mysql memcache сервер?

Надіслати
Поділитися на інших сайтах


  • 2 years later...

Включит вчера Nginx+Memcache. Товары грузятся быстро, а категории - тормоза нереальные. Бывает 5 раз подряд мгновенно загруятся, а в следующий раз как в первый раз - 10 секунд.

ii  memcached                                1.4.5-1                          A high-performance memory object caching system
ii  nginx                                    0.7.67-3+squeeze3                small, but very powerful and efficient web server and mail proxy
ii  percona-server-server-5.5                5.5.35-rel33.0-611.squeeze       Percona Server database server binaries
ii  php5-cli                                 5.3.3-7+squeeze18                command-line interpreter for the php5 scripting language
ii  php5-memcache                            3.0.4-4+squeeze1                 memcache extension module for PHP5

 

С категориями как решить ситуацию - может кто-нибудь подскажет?

Надіслати
Поділитися на інших сайтах


Все перепроверил - оказалось, что это все проделано в сборке ocStore-1.5.5.1.1, которую я скачал с https://myopencart.com/

Но все равно, мемкэш видит какие-то изменения при перезагрузке страницы и не хочет кэшировать даже те категории, в которых только есть ссылки на подкатегории и нету товаров. Да и товары у меня в течении дня не меняются.

 

Самое интересное, что для пользователей - тормозит страшно.

Для теста http://gtmetrix.com/ - как бы все отлично

Page load time: 3.75s
Total page size: 332KB
Total number of requests: 41

Надіслати
Поділитися на інших сайтах


Поставил вот эту штуку:

https://opencartforum.com/files/file/786-db-log/

Мне по логам показало:

2013-12-29 11:52:59 - 6.65963 |     7 | /var/www/catalog/controller/module/journal_cp.php(597)

7 запросов - 6,65 секунд

2013-12-29 11:53:07 - 1.89151 |     2 | /var/www/vqmod/vqcache/vq2-catalog_controller_product_category.php(229)

2 запроса - 2 секунды

 

Везде показало строчки:

$product_total = $this->model_catalog_product->getTotalProducts($data);

 

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

Надіслати
Поділитися на інших сайтах


Убрал эти медленные запросы количества. Стало быстрее, но не совсем мгновенно. Выскочило 3 медленных запроса:

2013-12-29 12:58:07 - 0.50639 |    40 | /var/www/vqmod/vqcache/vq2-catalog_model_catalog_product.php(305)

$product_data[$result['product_id']] = $this->getProduct($result['product_id']);

2013-12-29 12:58:07 - 1.86444 |     2 | /var/www/vqmod/vqcache/vq2-catalog_controller_product_category.php(229)

$results = $this->model_catalog_product->getProducts($data);

Хотя..

 

 

Во многих контроллерах вызов методов getProducts и getTotalProducts происходит парно:
$product_total = $this->model_catalog_product->getTotalProducts($data);
$results = $this->model_catalog_product->getProducts($data);

Добравив к запросу (1) параметр SQL_CALC_FOUND_ROWS можно в одном запросе не только загрузить из базы N записей, ограниченных условием LIMIT, но и подсчитать все найденные записи. Тогда запрос (2) уже будет не нужен.

Это все я перепроверил. Все рекомендации применены. Но все равно тормозит второй запрос.

2013-12-29 12:58:07 - 1.92603 |     2 | /var/www/catalog/model/catalog/simonfilters.php(179)

$rows = $this->model_catalog_product->getProducts($data);

Фильтр товаров. Отключить не могу, т.к. он нужен )

Надо как-то ускорить. Есть рекомендации?

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.