Найти в Дзене
Бумажный Слон

#Закулисье: Правим код под руководством ИИ

#Закулисье: Правим код под руководством ИИ Кто в два часа ночи пытается кодить по советам ChatGPT — тот я. На этот раз руки дошли до правок в мессенджере. Последние несколько дней при открытии сообщений сайт задумывался на 20–30 секунд. Это очень долго и критично для сайтов. Причину понять несложно — неоптимизированные запросы. Команда get_contact из-за огромных списков контактов в сообщениях получала тысячи записей в рамках одного запроса. А потом ещё для каждого контакта проверяла и считала непрочитанные сообщения. Только у админа в списке было более 500 контактов. Сколько у других пользователей — гадать не берусь, но наверняка много. Поэтому и появилась идея попробовать установить лимит в запросах — до 50 контактов. Вряд ли кто-то общается одномоментно с пятьюдесятью пользователями. Расчёт количества непрочитанных сообщений решил заменить на простую метку: есть новые сообщения или нет. Сколько именно — откроешь контакт и узнаешь. Да, для кого-то не так удобно, но пока это разу

#Закулисье: Правим код под руководством ИИ

Кто в два часа ночи пытается кодить по советам ChatGPT — тот я.

На этот раз руки дошли до правок в мессенджере. Последние несколько дней при открытии сообщений сайт задумывался на 20–30 секунд. Это очень долго и критично для сайтов.

Причину понять несложно — неоптимизированные запросы. Команда get_contact из-за огромных списков контактов в сообщениях получала тысячи записей в рамках одного запроса. А потом ещё для каждого контакта проверяла и считала непрочитанные сообщения.

Только у админа в списке было более 500 контактов. Сколько у других пользователей — гадать не берусь, но наверняка много.

Поэтому и появилась идея попробовать установить лимит в запросах — до 50 контактов. Вряд ли кто-то общается одномоментно с пятьюдесятью пользователями.

Расчёт количества непрочитанных сообщений решил заменить на простую метку: есть новые сообщения или нет. Сколько именно — откроешь контакт и узнаешь.

Да, для кого-то не так удобно, но пока это разумный компромисс.

В общем, на словах всё просто, а вот найти, где все эти запросы генерируются и обрабатываются…

Ну что же. Спустя шесть часов мне это удалось.

Завтра ещё потестируем вместе со всеми пользователями. Но на данный момент 20 секунд на запрос удалось сократить.

Теперь всего лишь сделать обязательную ежедневную базу… и пойти позавтракать перед сном.

Всем доброй ночи! Или утра?