[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблема с большим количеством запросов
Страницы: 1, 2, 3, 4
Valick
curious, есть гораздо лучше вариант, чем предложенный вами.
Хотя нет, даже не так, можешь мне в личку скинуть полный вариант того что ты хотел сказать ТС?

_____________
Стимулятор ~yoomoney - 41001303250491
chee
Valick, что бы быстрее найти решение проблемы, вдруг кто сталкивался.

И да данная процедура на 95 записях выполняется на одном (проблемном сервере) 22-30 секунд, у меня на локальном 0.6 секунды, записей больше 120. Конфиги сравнивал построчно, отличий существенных нет.

_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
chee
kaww, ок сейчас посмотрю.

Посмотрел, таблица не сломана, движок InnoDB

_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Valick
Цитата (chee @ 7.12.2015 - 14:56)
Еще раз, не надо учить меня писать код, я это делать умею не хуже вас.

ой пропустил...
тут могу сказать только буга-га-га-га
тема реально продолжение file_get_content biggrin.gif


_____________
Стимулятор ~yoomoney - 41001303250491
Valick
$timestart = microtime(true);
$sql = "SELECT id FROM opportunities AS o WHERE o.date_entered > '2015-12-07 06:00:00' AND o.deleted = 0";
$rows = dbGetArray($sql);
foreach ($rows as $row) {
$sql = "UPDATE opportunities AS o SET o.deleted = 0 WHERE o.id = " . dbQuote($row['id']);
dbExecute($sql);
}
echo microtime(true) - $timestart;


бугага номер раз
$sql = "UPDATE opportunities SET deleted = 0 WHERE  date_entered >  '2015-12-07  06:00:00' AND deleted = 0";

бугага номер два
SET deleted = 0

WHERE deleted = 0


_____________
Стимулятор ~yoomoney - 41001303250491
chee
Valick, закрываю для тебя тему, ответа как я понял ты не знаешь.

_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
depp
да знает он ответ судя по его сообщениям. судя по всему вы его не понимаете.
на месте вашего работодателя я бы вас уволил.
chee
depp, ты почитай мои сообщения, посмотри что в них написано, в циферки повглядывайся, а потом уже воняй, великий увольнитель мля.

Проблема есть и буду рад предложениям как ее решить.

_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Миша
В своём стиле, парень то с Урала wink.gif

_____________
Принимаю заказы, писать в ЛС
kaww
Цитата (Valick @ 7.12.2015 - 13:00)
бугага номер два

ну, как бы chee указал, что это синтетический пример. А так да, эти конкретные запросы фактически никаких данных не меняют.
chee, транзакция тоже не решила проблему?
chee
kaww, ну это просто не решение проблемы, задача как мне кажется должна решать без правки кода, а транзакция на сколько я понимаю, это все таки правка кода.

_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
kaww
Цитата (chee @ 7.12.2015 - 14:22)
задача как мне кажется должна решать без правки кода

А что если это не так? В любом случае нужно проверять все варианты, если не удается идентифицировать проблему иначе. А там уже смотреть, как применять решение в контексте непосредственно шугар црм, или что там у тебя.
З.Ы. может что подскажет show profile
Oyeme
Автор темы решил потролить
Ответ настолько очевидет и уже был уопомянут свыше.
sergeiss
Цитата (chee @ 7.12.2015 - 15:26)
Выполняю один простейший запрос на обновление записи в БД, все проходит быстро.

Чему равно "быстро"? 1/3 секунды - это быстро?
Цитата (chee @ 7.12.2015 - 15:26)
Начинаю выполнять 90 штук друг за другом, выходит около 30 секунд.

Тут, в среднем, как раз около 1/3 секунды на запрос. Очень долго! Хотя, когда всего один запрос, это может показаться и быстрым.

И да, правильный ответ в теме уже есть smile.gif Всё можно сделать одним запросом. Ответ - на первой странице. Как именно ты его впихнешь в свою систему - это уже твоя задача.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
chee
sergeiss, это не правильный ответ, по нескольким причинам.

Первое, это код вендора, его нельзя изменять, иначе можно огрести при обновлении, нихило. Второе, это неправильное решение, так как явно видно что проблема кроется где-то в другом месте, и решать проблему таким способом является попыткой бегства от проблемы, а не ёё решением.

Ну и вот недавно, выполни снова тестовый скриптик с вышеупомянутым скриптом и почему то он отработал меньше чем за секунду. Короче это еще больше убеждает меня в какой-то аномалии, либо где-то что-то нагружает БД, либо кто-то что сделал, что проблема решилась.

И еще вроде бы все квалифицированные спецы, а такую ахинею советуете, только kaww хоть как то пытается помочь, а остальные как в анекдоте про многоэтажку. Я удивляюсь как можно игнорировать цифры и нести бред про один запрос. Это же - БРЕД. Ну понятно же что здесь не проблема в количестве запросов, проблема в чем-то другом. У меня бомбит, я весь пылаю laugh.gif

Анекдот:
Цитата
Если бы сисадмины работали в МЧС:
- Алло! Приезжайте, здесь жёлтая двенадцатиэтажка горит!
- Ну, не знаю, у меня напротив такая же жёлтая двенадцатиэтажка, и она не горит.


_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.