Производительность Drupal 8?

Главные вкладки

Комментарии

Аватар пользователя unbound unbound 20 августа 2017 в 18:26

Making Drupal 8 fly

Пишут,Drupal 8 держал на тестах 1200 клиентов (не запросов) на машине с 8GB/8CPU, далее стал сыпаться с 500ками и таймаутами. 7-ка все таки попроизводительнее на тестах себя показала.

«I feel the real performance of Drupal 7.41 is around 15%-25% better comparing to Drupal 8 RC2.»

Аватар пользователя multpix multpix 20 августа 2017 в 19:31

Просто попробуй сам сравнить производительность актуальных версий.
стандартный профиль 7-ки и 8-ки, немного контента от devel_generate

Это будет более верным, нежели слухи собирать)

Помимо "скорости", "нагрузки" работающего, также следует учесть и "удобство" разработки.
Имхо - 8 самая "удобная" из друпалов.

Аватар пользователя gun_dose gun_dose 20 августа 2017 в 19:35

Если подробнее, то этому бенчмарку никак не менее двух лет. И актуальные версии сегодня 7.56 и 8.3.7. Кроме того, за это время вышла ещё и новая версия пхп. Так что обсуждать попросту нечего.

Аватар пользователя unbound unbound 20 августа 2017 в 19:36

Один только минус у 7-ки - завязка на API. 8-ка написана на Symphony 2,если что сайт можно потом будет переписать на чистом Symphony 2.

Аватар пользователя Tahtabaev Tahtabaev 20 августа 2017 в 19:39
1

Если сайт разовьется до степени, что пора переписывать. То думаю это не проблема и финансов хватит. А заботится об этом раньше времени смысла особого нету.

Аватар пользователя bsyomov bsyomov 21 августа 2017 в 18:02

Это по меньшей мере не совсем так; используются некоторые компоненты Symphony.
Переписать в специализированное решение на том же Symphony, будет не легче чем 7, если подумать. И в том и в другом случае придётся просто делать приложение с нуля. Smile

Аватар пользователя adubovskoy adubovskoy 20 августа 2017 в 20:53
2

Многие вебмастера все еще используют php 5.4, а так-как обновление версии этого языка — та еще проблема, drupal тут однозначно проигрывает своим более гибким конкурентам.

Чет дальше смысла читать нет )) Автору надо бы написать что 5.4 уже 2 года не поддерживается и не получает обновлений безопасности, http://php.net/supported-versions.php .
Жирок - да)

Аватар пользователя fairrandir fairrandir 21 августа 2017 в 10:30
1

Наконец-то в Drupal соизволили завезти tinymce,
Даже в базовом виде, всего с одним материалом, страница грузится почти 600 миллисекунд
Давно пора бы уже перевести движок под bootstrap или его аналоги. Но нет. Увы. Разработчикам Drupal рассказать об таком замечательном фреймворке, видимо, забыли.
Чёт ржу. Чувак привык клепать ГС на покупных шаблонах на ВПшечке.

Аватар пользователя ivnish ivnish 21 августа 2017 в 10:35

Тоже обратил внимание на tinymce, который на самом деле Ckeditor) И на другие неточности автора, который или на эмоциях писал или просто дилетант.

Аватар пользователя BatKor BatKor 21 августа 2017 в 11:09

Куда не поверни хейтеры Друпала много. Или мы "сообщество" отстаём или все хейтеры глупцы. А среди хейтеров в основном кликальщики.

Аватар пользователя Niklan Niklan 21 августа 2017 в 12:46

8-ка на продакшене быстрее будет, это факт, за счет мощного кэширования которого в 7-ке нет и никак не добиться. В дев окружении быстрее 7-ка. но это никого волновать не должно особо.

Аватар пользователя fairrandir fairrandir 21 августа 2017 в 12:57

Позволю себе немного не согласиться. Есть два идентичных сайта под рукой: на Drupal 7 и на Drupal 8. TTFB, первый экран, время до интерактивности, вот это вот всё, идентичны, и укладываются в секунду. Вопрос во времени, затраченном на то, чтобы добиться такого результата. На D8 это у меня заняло меньше времени, при том, что это мой первый сайт на 8-ке.
Так что вопрос больше в удобстве и, соответственно, скорости разработки.

Аватар пользователя Niklan Niklan 21 августа 2017 в 13:56

Чем больше будет разрастаться проект и его гибкость, тем больше будет сливаться 7-ка и выигрывать 8-ка за счет своих cache context и tags.

Аватар пользователя unbound unbound 21 августа 2017 в 16:34

Пока тема не переросла в флуд,предлагаю привести примеры,сколько клиентов/сек держат ваши личные проекты на 8-ке.

Аватар пользователя fairrandir fairrandir 21 августа 2017 в 17:09

Вы же понимаете, что это все эти метрики достаточно расплывчаты, и зависят не только и не столько от друпала, сколько от настроек сервера? Или что нужен полностью идентичный сайт на обоих системах для сравнения, при этих тестах не учитывается что видит клиент, и вообще все эти метрики имеют хоть какое-то значение при посещалке СИЛЬНО выше средней, и зависят от специфики проекта, прямости рук и других факторов?

Аватар пользователя unbound unbound 22 августа 2017 в 4:38

Конечно понимаю. Я же не требую цифры как в аптеке. Так на глаз прикинуть. Итого: версия drupal,установленные модули,параметры сервера,используется ли cdn итп;сколько тянет.

Аватар пользователя bsyomov bsyomov 21 августа 2017 в 18:06

Не всё так однозначно - кеширование хороший приём, но не панацея. и не всегда применимо. И производительность без кеширования бывает весьма важна.
И даже при кешировании, надо не забывать, что кеш надо иногда и перестраивать.

Аватар пользователя unbound unbound 22 августа 2017 в 12:53

Кэширование для производительности вам поможет,когда у вас более менее статический контент (больше чтений,чем записей). Википедия как пример.Или новостной сайт,где комменты внешние типа disqus итп. Попробуйте закэшировать страницу товара на 5-10 мин в онлайн-магазине,где постоянно совершаются покупки...

Аватар пользователя adubovskoy adubovskoy 22 августа 2017 в 13:16

а что с этим не так?) Коллизия по наличию товаров эт этого никуда не денется. Ситуация когда остался 1 товар, 2 пользователя заходят на эту (незакэшированную!) страницу, долго внутри нее думают и покупают находясь на странице. Коллизия? да. Кэширование выключено. Что делать?) Вот решение этой коллизии можно применить как с выключенным, так и с включенным кэшем.

про кол-во записей в базу. Если мы говорим о магазине, то записи там - это действия типа корзины, покупок, сравнений и т.п. Так вот. Когда кол-во записей на эти действия упрутся в лимиты пары-тройки сервачков за 15-20т.р., владельцы магазина могут уже выбирать какой остров они планируют купить и им эти расходы будут незаметны.

Аватар пользователя unbound unbound 22 августа 2017 в 13:27

« Что делать?) »
Повесить ajax-проверку статуса товара на кнопку добавления в корзину,емае.). При этом и кэш можно иcпользовать.Я вверху привел сферический пример возможных проблем с кэшем.

Аватар пользователя Niklan Niklan 22 августа 2017 в 13:44

Cache context, tags и max-age в 8-ке вам в помощь. Можно спокойно сделать контекст по кол-ву товара в наличии, и внезапно, кэш будет работать корректно, или чистить кэш по тегу количества товаров. Смотря какой вариант лучше подойдет под магазин и его трафик и поведение.

А обновлять на странице, как вы и сказали, можно AJAX. В 8-ке это не проблема.

P.s. а в связке с #lazy_builder будет летать всегда, даже если кэш только начинает генерироваться.

Аватар пользователя unbound unbound 22 августа 2017 в 15:07

Небольшой лайфхак/баг,иллюстрирующий работу кэша: как читать комментарии,закрытые по давности на Lenta.ru.
Идем https://lenta.ru/comments/news/2017/08/17/uzhasi_koshmari/ ==> "Комментарии к материалу закрыты в связи с истечением срока его актуальности"
А теперь открываем в Гугле cache:https://lenta.ru/comments/news/2017/08/17/uzhasi_koshmari/ и спокойно читаем. Почему это работает,думаю,понятно: комментарии подгружаются закэшированным javascript'овым виджетом сторонней системы комментариев на странице. (Непонятно,только почему на Lent'е это до сих пор непоfixено ¯ \ _ (ツ) _ / ¯ ).

Аватар пользователя pselfin pselfin 22 августа 2017 в 16:37

Потому что Лента (как и другие сайты) к кешу гугла не имеет никакого отношения. Гугл грубо говоря это кеширует и хранит "для себя".

Аватар пользователя pselfin pselfin 22 августа 2017 в 17:55

Да, кеш скрипта, я потом посмотрел.
Но тем не менее - это уже лежит у гугла) то что он умеет это делать (в отличии от кеша яндекса) - Лента к этому отношения не имеет))
Если для них это проблема - то пусть думают как решить)

Аватар пользователя unbound unbound 22 августа 2017 в 19:03

Причем тут кэш Гугла? Гугл кэширует только javascript,который подгружает комменты. Вопрос,какого художника они подгружаются,если они в статусе закрыто? Это баг.

А пример я привел,для того чтобы показать,как можно "пролететь" с кэшем на собственном сайте.

Аватар пользователя Stepankov Stepankov 22 августа 2017 в 19:46

Сравнивать кеш сайта и кеш поисковой системы как-то странно.
Вы уж извините.
Цели разные, задачи разные, инвалидация тоже разная.