almaz.izguzhin 2 Опубликовано: 25 декабря 2022 Рассказать Опубликовано: 25 декабря 2022 Подскажите, хочу сделать крупный портал, где в будущем будет около миллиона новостей. Скажите DLE выдержит нагрузку и какие характеристики сервера лучше смотреть самые топовые для нагрузки? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 25 декабря 2022 Рассказать Опубликовано: 25 декабря 2022 39 минут назад, almaz.izguzhin сказал: Скажите DLE выдержит DLE выдержит все что выдержит ваш сервер. 39 минут назад, almaz.izguzhin сказал: и какие характеристики сервера лучше смотреть самые топовые для нагрузки? Никакие. Сначала создайте этот контент, и получите нужную аудиторию. Потому как все зависит от того какой будет контент и каковы настройки серверного ПО и какова посещаемость. Вы можете одной некорректной настройкой сервера положить его с посещаемостью 10 человек и десятью новостями, а может при правильной настройки серверного ПО держать и миллион обращений в сутки. Все зависит от вас. Амбиции это хорошо, но когда вы подойдете к этому у вас уже будет опыт и понимание этого вопроса и вы не будете задавать подобных вопросов, потому как будете уже знать что универсальных ответов на эти ваши заданные вопросы попросту не существует в природе. Все зависит от всех составляющих вместе. Люди при начинании почему то думают, что они взяли сервер, и построили Youtube империю, так не бывает ))) Начните с малого, DLE долго позволяет расти, далеко не каждый движок позволяет расти с минимальными требованиями к ресурсам, а DLE запросто, но это не значит что нужно сразу хватать что то мощное или знать универсальный ответ что нужно брать. Берите малое и растите до ваших обьемов и амбиций, когда вырастите, будете уже знать какие именно железо вам нужно. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Хоббит 35 Опубликовано: 26 декабря 2022 Рассказать Опубликовано: 26 декабря 2022 Оптимизируйте SQL запросы когда сервер начнёт падать. На данный момент у меня больше миллиона новостей при 30-60к посетителей в сутки и никаких проблем нет. Хотя до этого пришлось очень многое пережить и изменить в DLE. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Xhhunt 5 Опубликовано: 29 декабря 2022 Рассказать Опубликовано: 29 декабря 2022 26.12.2022 в 10:39, Хоббит сказал: На данный момент у меня больше миллиона новостей при 30-60к посетителей в сутки и никаких проблем нет. Хотя до этого пришлось очень многое пережить и изменить в DLE Думаю, не я один был бы благодарен за информацию, что нужно предпринять чтобы при достижении таких объемов сайт продолжал работать нормально. Что пробовал: новости во всех разделах выводятся только за последний год (а это меньше 10% от всего их количества), остальное можно найти только через поиск, убрал из запросов к базе то, что не выводится на страницах, сам поиск ищет только по выбранной категории и по умолчанию тоже за короткий период, с возможностью выбора большего периода, но без возможности поиска по всем разделам сразу. Если выводить все новости за все время, то время открытия страницы начинает превышать 10 секунд. Цитата Ссылка на сообщение Поделиться на других сайтах
Хоббит 35 Опубликовано: 30 декабря 2022 Рассказать Опубликовано: 30 декабря 2022 14 часов назад, Xhhunt сказал: Думаю, не я один был бы благодарен за информацию, что нужно предпринять чтобы при достижении таких объемов сайт продолжал работать нормально. Что пробовал: новости во всех разделах выводятся только за последний год (а это меньше 10% от всего их количества), остальное можно найти только через поиск, убрал из запросов к базе то, что не выводится на страницах, сам поиск ищет только по выбранной категории и по умолчанию тоже за короткий период, с возможностью выбора большего периода, но без возможности поиска по всем разделам сразу. Если выводить все новости за все время, то время открытия страницы начинает превышать 10 секунд. А вы искали причину проблемы? Что именно вы считаете проблемой, медленную загрузку страницы? Для начала стоит выяснить в чем проблема, используйте плагины типа Power-Log и далее решения. Вот например проблема с похожими симптомами: https://dle-faq.ru/faq/questmysql/26908-kak-optimizirovat-zapros-mysql.html Также стоит написать технические характеристики типа: версия DLE, сервер, какая версия php (Apache or Litespeed?) и так далее. Нужно больше данных, тут вряд ли есть ясновидящие :) Цитата Ссылка на сообщение Поделиться на других сайтах
Xhhunt 5 Опубликовано: 30 декабря 2022 Рассказать Опубликовано: 30 декабря 2022 Замеченная проблема - большое время выполнения запросов при постраничном выводе коротких новостей за все время (что и определяет скорость загрузки страницы, если не использовать озвученные выше костыли). При этом новостей пока более чем в 10 раз меньше чем у вас и посещаемость не более 10-20к в сутки. Хостинг РТК Операционная система: Linux 4.9.0-0.bpo.3-amd64 Apache 2.4.10 MySQL 10.2.36+maria~jessie PHP 7.4.29 (alt) Режим работы CGI Оперативная память 1024 MiB Процессорное время не ограничено (ед.) Update-запросов к MySQL 300000 (на MySQL-пользователя в час) Запросов к MySQL 600000 (на MySQL-пользователя в час) MySQL-соединений 300000 (на MySQL-пользователя в час) DLE 15.0 Общее количество новостей: 88 124 Всего комментариев: 289 570 Размер базы данных: 1.24 Gb Тип кэширования: Файловый кэш Включено: предварительная модерация комментариев, возможность публиковать новости на еще не наступившую дату, поддержка мультикатегорий, возможность вывода всей информации об авторе публикации, счетчик просмотров, возможность управления рекламными материалами, Gzip сжатие JS файлов, поддержка регистрации и авторизации пользователей, поддержка комментариев на сайте для опубликованных новостей, показ новостей находящихся в субкатегориях, при просмотре родительских категорий. Цитата Ссылка на сообщение Поделиться на других сайтах
crafic 32 Опубликовано: 30 декабря 2022 Рассказать Опубликовано: 30 декабря 2022 5 hours ago, Xhhunt said: Оперативная память 1024 MiB купите впс где будет не 1гб а 4гб. и кеш можно в редис или мемкеш. Цитата Ссылка на сообщение Поделиться на других сайтах
Хоббит 35 Опубликовано: 31 декабря 2022 Рассказать Опубликовано: 31 декабря 2022 (изменено) 16 часов назад, Xhhunt сказал: Включено: предварительная модерация комментариев, возможность публиковать новости на еще не наступившую дату, поддержка мультикатегорий. Очевидно эти функции сильно снижает производительность движка, особенно "возможность публиковать новости на еще не наступившую дату": если не ошибаюсь то данная функция постоянно сканирует всю таблицу dle_post на наличие approve=1. То есть при каждом переходе на следующую страницу запрос сканирует 88 124 новостей что в БД. Я решил отключить данные функции учитывая будущее, и убрал approve=1 и main_allow, отключил мультикатегорий. Вот решения: https://sandev.pro/web/141-optimizaciya-dle.html Ещё полезно: https://sandev.pro/web/141-optimizaciya-dle.html#comment-id-2329 Я вроде выше кинул ссылку похожую. Мой сервер начал падать когда я набрал 300к новостей и 20к посетителей, DLE 12. Но сервер падал из-за огромного количества кэша и Apache, у вас же просто медленные страницы пагинации. Изменено 31 декабря 2022 пользователем Хоббит Цитата Ссылка на сообщение Поделиться на других сайтах
МВИА 10 Опубликовано: 31 декабря 2022 Рассказать Опубликовано: 31 декабря 2022 Ещё, в тему, отключите "перекрестные ссылки", потребляют гигантское кол-во ресурсов. Реализовано в ДЛЕ очень неудачно. При собирании 1 мил. Страниц будет несколько миллионов запросов, т.к. при каждом выводе будет проверять на их наличие. Я знаю, что разработчики знают о колоссальной нагрузке при включении функции. Переписывался с ними. Будем надеятся, что изменят алгоритм "... ссылок" Цитата Ссылка на сообщение Поделиться на других сайтах
Хоббит 35 Опубликовано: 31 декабря 2022 Рассказать Опубликовано: 31 декабря 2022 1 час назад, МВИА сказал: Ещё, в тему, отключите "перекрестные ссылки", потребляют гигантское кол-во ресурсов. Реализовано в ДЛЕ очень неудачно. При собирании 1 мил. Страниц будет несколько миллионов запросов, т.к. при каждом выводе будет проверять на их наличие. Я знаю, что разработчики знают о колоссальной нагрузке при включении функции. Переписывался с ними. Будем надеятся, что изменят алгоритм "... ссылок" О чем вы, этот модуль ещё с древних времён не изменилось, разработчик поленился даже поправить css checkbox не говоря уже про алгоритмы. Я помню как писал про этот модуль ещё 3-4 года назад, да и модулем пользуется от силы 1% пользователей. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 31 декабря 2022 Рассказать Опубликовано: 31 декабря 2022 1 час назад, МВИА сказал: Ещё, в тему, отключите "перекрестные ссылки", потребляют гигантское кол-во ресурсов. Реализовано в ДЛЕ очень неудачно. При собирании 1 мил. Страниц будет несколько миллионов запросов, т.к. при каждом выводе будет проверять на их наличие. Я знаю, что разработчики знают о колоссальной нагрузке при включении функции. Переписывался с ними. Будем надеятся, что изменят алгоритм "... ссылок" Вы корне не правы и не знаете как он работает. И я сейчас не про нагрузку, а про то как он работает. Никакого миллиона запроса к БД нет и быть не может, запрос всегда только один!!!! и не на страницу а вообще. Но данный модуль несет нагрузку, но на CPU во время парсинга этих страниц, если у вас миллион ссылок, то нужно найти на странице миллион вхождений используя регулярные выражения, время занимают регулярные выражения поиска по странице вашего миллиона вхождений, а не какие то запросы к БД, к БД вообще запросов нет. И работает это так не потому что алгоритм плохой, он в принципе быть не может другим в этом его сама суть, чтобы заменять быстро что то в реальном времени. Он по своей сути не может быстро работать иначе. Этот модуль нужен для быстрой замены в реальном времени малого количества контента. А когда начинают применять модуль для чего он не предназначен, и запихивать в него миллионы записей, то начинается то что начинается. Для того о чем вы написали в DLE предусмотрен совершенно иной механизм, называется фильтр слов, где разбор идет не в режиме онлайн, а только при добавлении и редактировании контента, и который специально заточен под работу с большими обьемами данных. 33 минуты назад, Хоббит сказал: О чем вы, этот модуль ещё с древних времён не изменилось, разработчик поленился даже поправить css checkbox не говоря уже про алгоритмы. Нужно просто применять ту или иную возможность исключительно в тех целях, в которых они предназначены. А не пытаться придумать свои цели, а потом обвинять алгоритмы, и ждать годами их изменения. Они не могут измениться, потому как потеряют свою возможность, и не может быть парсинг в реальном времени быстрее. Физически не может. А для парсинга не в реальном времени совершенно другие модули и разделы для этого есть. И даже не один, выше я написал только один из альтернативных возможных. А то люди любят применять возможность не в тему, потом писать что то не так и медленно, и ждут каких то изменений, которых никогда не будет, только потому что это так не потому что алгоритм плохой, а проектирование вами вашего сайта было плохое и возможность применяется не та, которую правильнее было. Хотел бы я посмотреть как вы сделаете миллион регулярных выражений на странице "мегабыстро" в реальном времени. Ключевое слово именно в реальном времени, потому как модуль для замены в реальном времени. Не в реальном времени у нас есть уже другой модуль. А здесь нужно именно в реальном времени обязательно и регулярные выражения обязательны. Раз мы такие ленивые, а вы не ленивый. А то какие то странные рассуждения: хочу миллион регулярок на страницу в реальном времени, а это долго, потому что разработчики ленивые, нет, это долго потому что миллион регулярок в реальном времени это долго и тяжело для процессора по сути, или вот у меня база на полтора гига, а вот на хостинге где я выделил всего гиг оперативы под все, включая все серверное ПО и OS, как то слабо ворочает этим обьемом информации. Нет вы серьезно? Хотите чтобы из воздуха все бралось? Так не бывает, нужно реально смотреть на вещи. И оптимизировать нужно то что действительно оптимизируется, а не то, что где то в головах и мечтах. 30.12.2022 в 12:15, Хоббит сказал: Вот например проблема с похожими симптомами: https://dle-faq.ru/faq/questmysql/26908-kak-optimizirovat-zapros-mysql.html Интересная тема, как то я ее пропустил из вида раньше. Вот это реально оптимизируется в DLE, и относится уже к реальной оптимизации. Тема очень хорошая. Нужно будет тщательно изучит вопрос пагинации кратких новостей, и думаю в будущем точно еще больше оптимизируем для работы на очень больших БД. Цитата Ссылка на сообщение Поделиться на других сайтах
МВИА 10 Опубликовано: 31 декабря 2022 Рассказать Опубликовано: 31 декабря 2022 6 часов назад, celsoft сказал: вообще. Но данный модуль несет нагрузку, но на CPU во время парсинга этих страниц, если у вас миллион ссылок, то нужно найти на странице миллион вхождений используя регулярные выражения, время занимают регулярные выражения поиска по странице вашего миллиона вхождений, а не какие то запросы к БД, к БД вообще запросов нет. И работает это так не потому что алгоритм плохой, он в принципе быть не может другим в этом его сама суть, чтобы заменять быстро что то в реальном времени. Он по своей сути не может быстро работать иначе. Этот модуль нужен для быстрой замены в реальном времени малого количества контента. А когда начинают применять модуль для чего он не предназначен, и запихивать в него миллионы записей, то начинается то что начинается. Тогда, почему этого нет в документации? Там написано, что только создаёт нагрузку, а про маленькие новости - ни слова. Вообще, документация написана как "для врагов". Писал много раз что надо подробнее, с примерами. Даже писал о опечатке, до сих пор не исправлена. Хорошая документация, лучший способ рекламы и привлечения новых пользователей. Здесь постоянно поднимаются темы о неудобстве тех.поддержки и т.п., потенциальный покупатель смотрит на это, и уходит. Я читаю лекции , в которой упоминаются разные смс, ДЛЕ стоит как самая недружественная к пользователю. Несколько тыс. В год слушателей, ни разу не слышал, что бы поставили у себя. Выбирают другие... 1 Цитата Ссылка на сообщение Поделиться на других сайтах
МВИА 10 Опубликовано: 31 декабря 2022 Рассказать Опубликовано: 31 декабря 2022 Только сейчас смотрел документацию на сайте разработчика, есть "Фильтр по IP, Логину или E-Mail", но фильтр слов не упоминается. Если это не описано в документации, то как узнать что это для этого, а это для другого? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 31 декабря 2022 Рассказать Опубликовано: 31 декабря 2022 1 час назад, МВИА сказал: Тогда, почему этого нет в документации? Там написано, что только создаёт нагрузку, а про маленькие новости - ни слова. Причем здесь большие или маленькие новости? Прочитайте внимательно о чем я выше писал, я не писал про размер новостей. Речь шла о количестве замен, т.е. замен которые задаются в модуле перекрестные ссылки. И создают нагрузку их количество, и об этом написано. И в админпанели раздел анализ производительности сайта указывает на это. 1 час назад, МВИА сказал: Только сейчас смотрел документацию на сайте разработчика, есть "Фильтр по IP, Логину или E-Mail", но фильтр слов не упоминается Админпанель на русском языке, там есть раздел, там все указано и написано. Документация описывает создание сайта, а не пользование сайтом. А это относится к пользованию уже построенным сайтом. А если что то непонятно, то всегда можно спросить тех. поддержку, она всегда поможет и обьяснит. 1 час назад, МВИА сказал: Здесь постоянно поднимаются темы о неудобстве тех.поддержки Где именно. Не совсем понятно о каком неудобстве тех. поддержки идет речь. Поясните. Тех. поддержка отказывает только тогда, когда от нее просят то что она не предоставляет. Например когда просят написать какой либо код на заказ. Все что относится к тех. поддержке оказывается всегда и вовремя. Даже сейчас, вам обьясняют что работает и как и что вы делаете неправильно. Это и есть работа тех. поддержки. Работа тех. поддержки оказывать помощь, например когда что то не работает в самом скрипте, или например указывание на неверное проектирование своего сайта это тоже поддержка. Просто некоторые путают тех. поддержку с работой по персональным хотениям и желаниям и представляют что это персональный программист, а также иногда проявляют потребительский экстремизм под видом "недружественная поддержка, не сделали то что я прошу". К поддержке нужно ведь обращаться именно по вопросам поддержки. А не по вопросам, исправьте сторонний модуль, напишите персональный для меня код, настройте за меня сервер и т.д. 1 час назад, МВИА сказал: Даже писал о опечатке, до сих пор не исправлена. Уточните здесь о какой именно идет речь, я внесу в лист исправлений. Цитата Ссылка на сообщение Поделиться на других сайтах
МВИА 10 Опубликовано: 1 января 2023 Рассказать Опубликовано: 1 января 2023 https://mega.nz/file/j45DDaJL#I0JuQqSZ0-_FHfk25tnJhwaWttTEShoH9Cz_W9MHBgQ https://mega.nz/file/uoBzmJ6a#XyjydpCJLjlnACNPWUC-his2jkT8BTiXXYBe2ceNUjw Вот скриншоты не исправленной опечатки и сообщение о ней в тех.поддержку. По остальным пунктам отвечу позднее. Дата скриншота, вчера Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 1 января 2023 Рассказать Опубликовано: 1 января 2023 2 часа назад, МВИА сказал: https://mega.nz/file/j45DDaJL#I0JuQqSZ0-_FHfk25tnJhwaWttTEShoH9Cz_W9MHBgQ https://mega.nz/file/uoBzmJ6a#XyjydpCJLjlnACNPWUC-his2jkT8BTiXXYBe2ceNUjw Вот скриншоты не исправленной опечатки и сообщение о ней в тех.поддержку. По остальным пунктам отвечу позднее. Так это изменение уже внесено. Документация выходит с новыми версиями, она отдельно не выпускается. Вы это сообщили уже после выхода актуальной версии, новая еще не выходила. Как выйдет, в ней будет соответсвенно новая документация, где это будет исправлено. Документация компилируется вместе с дистрибутивом и входит в состав дистрибутива. Я то подумал, что вы что то давно сообщали, а это не вносится несколько версий и не устраняется ошибка. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.