Доброе утро, Гость! Представляем Вам наши форумы. Вы можете зарегистрироваться чтобы писать на форумах или зайдите под своим именем, если Вы уже регистрировались.
   
   


Форум
 CMS Status-X | Техническая помощь
         Тормозит сайт

Похожие темы  |  Печать страницы

Тормозит сайт


События Четверг, 18.08.2011, 22:56

Rain

Группа: Пользователь
Ранг: Новичок
Cообщений: 30
Регистрация: 31.10.2009
Всем привет!

Наблюдаются сильные тормоза сайта, при большом количестве товаров (87 тыс.)
Что можете посоветовать для решения данной проблемы?

Заранее благодарен!


Накрылся сайтец
Цитата

Системное сообщение:
Ошибка в подключения к базе!
Ошибка №:1040
Пояснение: Too many connections

Сайт временно недоступен


Отредактировано Rain: 18.08.2011, 23:24:46

Пользователь офлайн
События Четверг, 18.08.2011, 23:29

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Использовать 1.04 a7 и не будет такой проблемы, проблема в количестве категорий магазина, я вообщето и это не хотел править в первой версии, но все же изменил поведение выборки категорий


Пользователь офлайн
События Четверг, 18.08.2011, 23:36

Rain

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 30
Регистрация: 31.10.2009
К сожалению проблема имеет место быть
Версия системы: Status-X v1.04 a7
Пользователь офлайн
События Четверг, 18.08.2011, 23:39

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Цитата
Автор: Rain
К сожалению проблема имеет место быть
Версия системы: Status-X v1.04 a7


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




Пользователь офлайн
События Четверг, 18.08.2011, 23:48

Rain

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 30
Регистрация: 31.10.2009
Скачал 1-2 недели назад
могу сравнить файлы, только какие файлы сравнивать?
у меня уже есть свои изменения в некоторых файлах
Пользователь офлайн
События Пятница, 19.08.2011, 00:00

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Цитата
Автор: Rain
Скачал 1-2 недели назад
могу сравнить файлы, только какие файлы сравнивать?
у меня уже есть свои изменения в некоторых файлах


Естественно класс магазина


Пользователь офлайн
События Пятница, 19.08.2011, 00:05

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
А ты случаем функцию RAND() не использовал в своих доработках? Ну типа вывод случайных товаров, при таком количестве товаров эта функция смертельна


Пользователь офлайн
События Пятница, 19.08.2011, 00:14

Rain

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 30
Регистрация: 31.10.2009
Использовал
ORDER BY RAND() LIMIT 10

Это не должно сказываться на производительности
у меня есть проекты где записей за пару сотен тысяч, и работает всё отлично

Может есть смысл прикрутить MEMCACHE?
Пользователь офлайн
События Пятница, 19.08.2011, 00:58

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
В первой версии я акселераторов прикручивать не буду, во второй у меня тестируются сейчас, блин даже лень писать как вымотался сегодня на скриншоте видно подключенные системы, но когда будет двойка я даже сам не знаю, я чудовищьно завален заказами на единице

По ранду вопрос не однозначный, в наследство от немца досталась сложная таблица, а для формирования выборки идет выбор всех товаров, при explain это очень хорошо видно, рекомендую обратить внимание на функцию getOrderSql которая недавно появилась, это небольшая замена для ранда, думаю со временем доработаю ее,была накидана на скорую руку, так как у меня в демо база больше двух лимонов товаров и на скорости сказывалось

Отредактировано Status-X: 19.08.2011, 01:05:36
Вложения



Пользователь офлайн
События Пятница, 19.08.2011, 01:14

Rain

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 30
Регистрация: 31.10.2009
Кстати я убрал из запроса RAND()
Сайт по прежнему мертвый
Пользователь офлайн
События Пятница, 19.08.2011, 01:21

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Цитата
Автор: Rain
Кстати я убрал из запроса RAND()
Сайт по прежнему мертвый


Ну тогда сравнивай классы магазина


Пользователь офлайн
События Пятница, 19.08.2011, 12:38

Rain

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 30
Регистрация: 31.10.2009
Сравнил файлы, они одинаковые

в новом файле в методе getShipper
убраны тестовые строки
Код
// echo '<pre>';
// print_r($laender);
// print_r($groups);
// echo "</pre>$_SESSION<br>$country_check";


В чем еще может быть проблема?
Пользователь офлайн
События Пятница, 19.08.2011, 12:56

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Включай вывод запросов в классе базы в методе Query

добавь
PHP-код
echo $query '<br />';

и смотри кто тебя валит

На самом деле очень странно у меня на демо базе гораздо больше товаров и проблем не вижу

Отредактировано Status-X: 19.08.2011, 13:02:09


Пользователь офлайн
События Пятница, 19.08.2011, 13:32

Rain

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 30
Регистрация: 31.10.2009
Я думаю что нужно пересмотреть функции которые запрос составляют Смешно

Код
SELECT SQL_CALC_FOUND_ROWS a.*, a.Titel_1 AS Titel, a.Beschreibung_1 AS Beschreibung, a.Titel_1 AS TitelDef, a.Beschreibung_1 AS BeschreibungDef, b.Name_1 AS KategorieName FROM sys_shop_produkte AS a, sys_shop_kategorie AS b WHERE a.Sektion = '1' AND a.Aktiv='1' AND ( Kategorie = '1' OR Kategorie = '2' OR Kategorie = '3' OR Kategorie = '4' OR Kategorie = '5' OR Kategorie = '6' OR Kategorie = '7' OR Kategorie = '8' OR Kategorie = '9' OR Kategorie = '10' OR Kategorie = '11' OR Kategorie = '12' OR Kategorie = '13' OR Kategorie = '14' OR Kategorie = '15' OR Kategorie = '16' OR Kategorie = '17' OR Kategorie = '18' OR Kategorie = '19' OR Kategorie = '20' OR Kategorie = '21' OR Kategorie = '22' OR Kategorie = '23' OR Kategorie = '24' OR Kategorie = '25' OR Kategorie = '26' OR Kategorie = '27' OR Kategorie = '28' OR Kategorie = '29' OR Kategorie = '30' OR Kategorie = '31' OR Kategorie = '32' OR Kategorie = '33' OR Kategorie = '34' OR Kategorie = '35' OR Kategorie = '36' OR Kategorie = '37' OR Kategorie = '38' OR Kategorie = '39' OR Kategorie = '40' OR Kategorie = '41' OR Kategorie = '42' OR Kategorie = '43' OR Kategorie = '44' OR Kategorie = '45' OR Kategorie = '46' OR Kategorie = '47' OR Kategorie = '48' OR Kategorie = '49' OR Kategorie = '50' OR Kategorie = '51' OR Kategorie = '52' OR Kategorie = '53' OR Kategorie = '54' OR Kategorie = '55' OR Kategorie = '56' OR Kategorie = '57' OR Kategorie = '58' OR
...
...
Kategorie = '446' OR Kategorie = '447' OR Kategorie = '448' OR Kategorie = '449' OR Kategorie = '450' OR Kategorie = '451' OR Kategorie = '452' OR Kategorie = '453' OR Kategorie = '454' OR Kategorie = '455' OR Kategorie = '456' OR Kategorie = '457' OR Kategorie = '458' OR Kategorie = '459' OR Kategorie = '460' OR Kategorie = '461' OR Kategorie = '462' OR Kategorie = '463' OR Kategorie = '464' OR Kategorie = '465' OR Kategorie = '466' OR Kategorie = '467' OR Kategorie = '468' OR Kategorie = '469' OR Kategorie = '470' OR Kategorie = '471' OR Kategorie = '472' OR Kategorie = '473' OR Kategorie = '474' OR Kategorie = '475' OR Kategorie = '476' OR Kategorie = '477' OR Kategorie = '478' OR Kategorie = '479' OR Kategorie = '480' OR Kategorie = '481' OR Kategorie = '482' OR Kategorie = '483' OR Kategorie = '484' OR Kategorie = '485' OR Kategorie = '486' OR Kategorie = '487' OR Kategorie = '488' OR Kategorie = '489' OR Kategorie = '491' ) AND a.Startseite = '1' AND b.Id = Kategorie AND b.Aktiv = '1' AND ((Gruppen = '') OR (Gruppen LIKE '%,1') OR (Gruppen LIKE '1,%') OR (Gruppen LIKE '%,1,%') OR (Gruppen = '1')) ORDER BY RAND() LIMIT 0, 5



и таких запросов два раза для одной страницы формируются
Пользователь офлайн
События Пятница, 19.08.2011, 13:50

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Флаг в руки, немец создал такой заморок, что просто так не переписать, без временных таблиц и хранимок борьба с этой структурой бесполезна.
Нужны доп поля в таблице, нужен контроль категорий и мультикатегорий, IN здесь бесполезен.
При том RAND здесь случайно остался, так как был в нижнем регистре, и я его пропустил, при том двух запросов случайной выборки одинаковых не бывает, при том для разных функцийРжу нимагу


Пользователь офлайн


Похожие темы  |  Печать страницы  |   Предыдущая тема  |   Следующая тема

Быстрый переход:  
 

 Сейчас на сайте


Пользователей: 0, Гостей: 2

Поисковые боты: 16
BingBot(4), Inktomi Slurp, oBot(5), Googlebot, Yandex(3), Unknown Bot(2)

 Статистика форума


  Темы Сообщения Пользователи
За сутки:
За неделю:
За месяц:
Всего:
Мы приветствуем нового участника: Lesya

 Дни рождения


fix (26)
Печать | Copyright © 2009 - 2016 Status-X All rights reserved | Powered by CMS Status-X 1.05 | Контакты