Jump to content


Photo
- - - - -

timestamp / mysql-slow-queries / что делать БД падает :)

mysql-slow-queries

  • This topic is locked This topic is locked
20 replies to this topic

#11 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 22 October 2014 - 07:59

Примерно так

Attached Files


  • 1
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#12 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 22 October 2014 - 17:42

Спасибо, вроде наааамного лучше стало работать! (редакторы ликуют) :)

 

Возможно ли оптимизировать комментарии? На сайте их безумно часто используют - стандартные ZOO.

 

Лог в mysql-slow-queries:

 

Spoiler


Edited by CB9TOIIIA, 07 May 2015 - 07:24.

  • 0

#13 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 23 October 2014 - 06:55

Открою секрет.
Коментарии Zoo - ужасные с точки зрения производительности.
Основная проблема, что на каждый комментарий страницы делается 1 запрос.
Хоть он и наипростейший, но он есть. И это откровенно говоря "№№;#*?%!!? полный и откровенное разгильдяйство от Yootheme.

Я бы вам порекомендовал использовать Disqus (Есть элемент).
Удобно администрировать прямо со страницы, есть вложенность, тонна настроек, нотификации и даже уровни доступа.
А главное - это ни как не грузит сервер.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#14 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 23 October 2014 - 07:08

Открою секрет.
Коментарии Zoo - ужасные с точки зрения производительности.
Основная проблема, что на каждый комментарий страницы делается 1 запрос.
Хоть он и наипростейший, но он есть. И это откровенно говоря "№№;#*?%!!? полный и откровенное разгильдяйство от Yootheme.

Я бы вам порекомендовал использовать Disqus (Есть элемент).
Удобно администрировать прямо со страницы, есть вложенность, тонна настроек, нотификации и даже уровни доступа.
А главное - это ни как не грузит сервер.

 

Мои опасения подтвердились :) спасибо за советы, подумаю про Disqus.

Если отказываться от ZOO комментов, то все комментарии потеряются, существует ли вариант как-то сохранить комментарии? да хоть в виде текста или может интеграция или импорт/экспорт

На ум приходит только спарсить все статьи (область комментариев) и создать 1 элемент (textarea) обозвать старые комментарии и через импорт в это поле по статьям импортировать, но может есть идеи?  (fingers) 


  • 0

#15 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 23 October 2014 - 07:17

Если отказываться от ZOO комментов, то все комментарии потеряются, существует ли вариант как-то сохранить комментарии? да хоть в виде текста или может интеграция или импорт/экспорт


Я этим не пользовался, но знаю что у них есть импорт
9lo_200x0.png

Последний формат - это вроде как xml.
Если поковырять, думаю можно сделать подходящий файл и залить.
 

Мои опасения подтвердились

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


 

Кстати, вот https://help.disqus....articles/472150

Довольно простой формат, думаю можно написать одноразовый конвертор. Работы на полчаса-час)
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#16 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 24 October 2014 - 17:33

все таки БД упала, можете сказать, о чем это говорит? jbzoo config


Edited by CB9TOIIIA, 07 May 2015 - 07:24.

  • 0

#17 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 24 October 2014 - 17:51

Нужно вот это пробовать

Если аккуратно, то можно добавить return false сюда
media\zoo\applications\jbuniversal\framework\helpers\jbtables.php
gz6_200x0.png


Типы таблиц на InnoDB меняли?
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#18 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 24 October 2014 - 18:07

нет еще, сейчас отказался от комментариев. Типы таблиц как поменять? в phpmyadmin? 

 

 

 

Если аккуратно, то можно добавить return false сюда
media\zoo\applications\jbuniversal\framework\helpers\jbtables.php

 

За что отвечает этот код?


  • 0

#19 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 24 October 2014 - 19:38

нет еще, сейчас отказался от комментариев. Типы таблиц как поменять? в phpmyadmin?

Да, вы ведь даже не пытались сами поискать ;)
https://www.google.r...pmyadmin innodb

За что отвечает этот код?

Индексация. Я писал выше.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#20 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 24 October 2014 - 19:54

Да, вы ведь даже не пытались сами поискать ;)
https://www.google.r...pmyadmin innodb
 

 

Я искал :) вразумительное нашел это. Так делать?

 

Изменил jbtables.php


    /**
     * @param $tableName
     * @param array $tblFields
     * @param array $tblIndex
     */
    public function createTable($tableName, array $tblFields, array $tblIndex)
    {
		 return false;
        $params = array_merge($tblFields, $tblIndex);

        if (empty($params)) {
            return;
        }

        $sql   = array();
        $sql[] = 'CREATE TABLE IF NOT EXISTS `' . $tableName . '`';
        $sql[] = '(' . implode(",\n ", $params) . ')';
        $sql[] = 'COLLATE=\'utf8_general_ci\' ENGINE=MyISAM;';

        $sqlString = implode(' ', $sql);

        $this->_db->query($sqlString);
    }


Edited by CB9TOIIIA, 24 October 2014 - 20:01.

  • 0




Click to return to top of page in style!