powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Один лишний запрос или все в куче (оптимизация)?
6 сообщений из 6, страница 1 из 1
Один лишний запрос или все в куче (оптимизация)?
    #39246585
aliskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При любых обращениях к бд в коде проверяется СИСТЕМНЫЙ статус пользователя (не заблокирован ли он на сайте администрацией сайта).

ПЕРВОЕ:
Можно делать один ОТДЕЛЬНЫЙ простой запрос и далее решать разлогинить пользователя и вывести сообщение о том что он заблокирован ИЛИ далее продолжить работу (обработку).


ВТОРОЕ:
В запросе, например, на вывод инфоПрофиля пользователя вместе с join`ом получать системный статус пользователя и сначала обрабатывать статус, а потом принимать решение что делать с пользователем и данными полученными в этом запросе.

Плюсы первого способа: Легкость реализации, минимизация нагрузки на бд, экономия байтов (байты перерастают в килобайты, кбт в мегабайты, мгб в гигабайты).

Минусы первого способа: Я вижу только один минус - лишний ЗАПРОС, не коннект, а именно запрос к бд.

Плюсы второго способа: не вижу. (или не хочу видеть).

Минусы второго способа: Чуток усложненные запросы к бд, чуток сложнее обработка статуса (хотя имеено в обработке статуса нет никакой сложности, сложность скорее состоит в получении этого самого статуса из бд). Лишний трафик.

Что значит "усложнение кода" во втором варианте: нужно исправлять, дописывать, переписывать некоторые запросы чтобы вместе с данными получать статус пользователя.

А если следовать первому способу, то пишу всего лишь одну функцию и включаю ОДНУ строчку в функцию проверки состояния кук (включены ли куки) у клиента. Все.

Я скорее всего буду реализовывать первый способ. Кто что думает об этом?
...
Рейтинг: 0 / 0
Один лишний запрос или все в куче (оптимизация)?
    #39246594
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользователь в данном случае - не учётная запись сервера MySQL, а просто абстрактная запись некоей внутренней таблицы БД?
Ну коли так - то при начальной аутентификации либо открывайте сессию и волоките её за собой, либо давайте отлуп...
...
Рейтинг: 0 / 0
Один лишний запрос или все в куче (оптимизация)?
    #39246600
aliskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заблокирован системой - простой пользователь забанен на сайте модератором или администратором.
...
Рейтинг: 0 / 0
Один лишний запрос или все в куче (оптимизация)?
    #39246602
aliskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaПользователь в данном случае - не учётная запись сервера MySQL, а просто абстрактная запись некоей внутренней таблицы БД?
Ну коли так - то при начальной аутентификации либо открывайте сессию и волоките её за собой, либо давайте отлуп...
То есть ПЕРВЫЙ вариант более предпочтительней?
...
Рейтинг: 0 / 0
Один лишний запрос или все в куче (оптимизация)?
    #39246656
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первый способ проще и экономичнее. Кроме того, пользователь может проявлять активность несколько раз в минуту, а блокировка учётной записи администрацией - штука довольно редкая. В этом смысле в ряде случаев можно вообще обойтись без дополнительного запроса к БД, если, например, некоторое время хранить статус пользователя в мемкеше.
...
Рейтинг: 0 / 0
Один лишний запрос или все в куче (оптимизация)?
    #39247188
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliskinМинусы первого способа: Я вижу только один минус - лишний ЗАПРОС, не коннект, а именно запрос к бд.


Нет тут никакого минуса.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Один лишний запрос или все в куче (оптимизация)?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]