Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 30
×

Странная проблема

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

У меня возникла трудность: сайт с базой (mysql) располагается у меня на компьютере.

Когда работает 1 человек все ок.

Как только появляется 2 человека все лагает. Выглядит это так:

пользователь 1 сабмитит форму, после отправления форму должен идти скрипт на допустим 20–30 mysql update с параллельными выборками по 2–3 на update.

в это время пользователь 2 хочет просто открыть любую страницу где есть mysql запросы, и он не может этого сделать пока у пользователя 1 недогрузится страница.

однако, у человека из вне, скрипт выполняется ~0.3сек, что странно, так как у меня 0.03 (разве пинг должен играть роль на скорость работы скрипта на сервере).
,
но висит все подозрительно дольше чем эти злосчастные 0.3 сек шде-то около 5—7сек. хм.

вопрос: проблема в говнокоде? или в настройках говносервера?

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
> 20−30 mysql update с параллельными выборками по 2−3 на update.
ты явно что-то делаешь не так. в плане алгоритма.,

а так сделай мастер-слейв.все записи в мастер. чтение не будет тормозить.

Видимо апдейты первого пользователя лочат таблицы/записи, которые хочет посмотреть второй пользователь?

Если пользуешь MyISAM — смотри SHOW PROCESSLIST;
Если InnoDB — смотри SHOW INNODB STATUS;

да и версию mysql не мешало бы указать

Кажется, всему виной была открытая сессия на протяжении всей страницы.
Помогло session_write_close ().
Но это пока не точный вердикт, так как все локальные тесты с использованием проксей могут быть ошибочными, хз почему.

Жду виновника торжества, из-за которого как раз все висло. Когда он протестит отпишусь, вдруг кому пригодится.

Підписатись на коментарі