Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Вопрос? Какой вариант кода больше нагружает сервер?

Тема в разделе "Вопросы- ответы", создана пользователем Bashmak, 12 авг 2018.

12.08.18 в 11:52
13.08.18 в 22:17
9
727
0
  1. TopicStarter Overlay
    Bashmak

    PRO Users

    Регистрация:
    25 фев 2017
    Сообщения:
    642
    Лучших ответов:
    1
    Рейтинги:
    +167 / 25 / -0
    1. Вариант.
    Есть доп поле, Тип поля: Чистый HTML или JS код.
    В него заношу код с ссылками на другие новости:
    HTML:
    <a href="/category/2386.html">Название: #1</a>
    <a href="/category/2387.html">Название: #2</a>
    <a href="/category/2388.html">Название: #3</a>
    <a href="/category/2389.html">Название: #4</a>
    
    И так далее, код может доходить до 700 ссылок.
    В полной новости вывожу этот код через доп поле [xfvalue_links]

    2. Вариант.
    Сейчас хочу переделать эту конструкцию на вывод ссылок через Тег {custom}.
    Вот так:
    HTML:
    {custom id="[xfvalue_links]" category="2" template="custom"  order="id_as_list" sort="desc" cache="yes"}
    
    В доп поле [xfvalue_links] уже буду заносить не html код ссылок, а айдишки(id) новостей, вот так 1,2,5-8.
    И так далее, может доходить до 700 id, например id 1-700.

    При переходе на второй вариант нагрузка на сервер сильно возрастёт?
    Как я понимаю при первом варианте у меня только один запрос к БД идёт, это запрос к доп полю.
    А при втором варианте, это будет запрос в БД к доп полю и + одно обращение к custom, да? Или ещё больше запросов будет?
     
  2. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    Bashmak
    Не совсем верно. Первый вариант - запрос делается в любом случае, общий запрос на саму новость в которую заходите. С этим доп полем или без него.
    Второй вариант - да, на каждую новость указанную в списке айди будут идти запросы, выставив параметр cache="yes" результат запросов будет кешироваться, что уберет запросы в бд до очистки Кеша. В случае выбора второго варианта рекомендую купить за копейки этот модуль - Custom-Cache by Sander
    Им можно будет задать тонкое время жизни Кеша . К примеру месяц. В течении месяца запросов к бд при выводе через кастум происходить не будет, так как данные будут браться из кеша
     
  3. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.898 / 96 / -0
    Первый вариант не несет никакого дополнительного запроса.
     
    #3 PunPun, 13 авг 2018
    Последнее редактирование: 13 авг 2018
  4. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    Дополнительного на отлельное доп поле нет конечно. В момент входа в полную новость данные с воздуха берутся или все же к бд идёт обращение?)
     
  5. TopicStarter Overlay
    Bashmak

    PRO Users

    Регистрация:
    25 фев 2017
    Сообщения:
    642
    Лучших ответов:
    1
    Рейтинги:
    +167 / 25 / -0
    Спасибо за ответы. Но для себя уже принял решение перейти на второй вариант с custom. Так как появляется возможность указать дату добавления, рейтинг, кнопку в закладки, и так далее тому подобное.

    Запросы к каждому id? Тот же Sander ответил мне, как я его понял, что запрос в БД будет всего один, при формировании custom, а не к каждому id по отдельности. Вроде так.
    Какой вариант кода больше нагружает сервер?
     
  6. DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    покажу на скринах
    без тега кастум в полной новости 6 запросов в общем
    Screenshot
    добавляю тег кастум с выводом трех дефолтных длешных новостей
    Screenshot
    запросов стало 12
    при выводе 700 новостей в теге кастум без кеша нагрузка будет огромная, но с кешем особо ощущаться не будет
     
  7. TopicStarter Overlay
    Bashmak

    PRO Users

    Регистрация:
    25 фев 2017
    Сообщения:
    642
    Лучших ответов:
    1
    Рейтинги:
    +167 / 25 / -0
    Я забыл как называется этот модуль который показывает запросы?
     
  8. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    Power-Log by Sander
     
    • Полезно Полезно x 1
  9. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.898 / 96 / -0
    Как может от одного кастома увеличиться с 6 до 12?
     
  10. TopicStarter Overlay
    Bashmak

    PRO Users

    Регистрация:
    25 фев 2017
    Сообщения:
    642
    Лучших ответов:
    1
    Рейтинги:
    +167 / 25 / -0
    Я про этот спрашивал =) ShowStat - модуль показа статистики генерации страниц для DLE 9.3-10.0

    В общем произвёл замеры двух вышеописанный вариантов с помощью этого модуля. Как и говорил Sander, добавится ровно один запрос.

    Перед каждым замером очищал кэш скрипта дле.

    1 вариант кода. 16 запросов.
    1.png

    2 вариант кода. 17 запросов. В custom добавил 30 айдишек(id).
    2.png

    С кэшем вообще у первого 2 запроса, у второго 3 запроса.
    Получается хоть сколько айдишек пропиши, запрос будет 1.
     
    • Нравится Нравится x 1
Яндекс.Метрика