Статьи

WordPress против Джекилла: почему вы хотите переключиться

Я использую WordPress последние восемь лет или около того, и, между прочим, он был хорошим компаньоном. Но это далеко не идеально. За последние четыре года, ведя блог с большим трафиком о видеоиграх, я боролся с рядом проблем, таких как:

  • Мой блог загружается медленно.
  • Мой блог рушится в пиковые периоды.
  • Мой блог заражается вредоносным ПО.

Ведение блога

Не то чтобы я не готовился к этим вещам. Я установил W3 Total Cache, настроил сеть доставки контента, обновил хостинг, установил несколько плагинов безопасности и выполнил все «передовые практики».

Помогли ли эти вещи? Конечно, но этого никогда не было достаточно, поэтому, когда я закрыл сайт и больше не нуждался в одном из самых больших преимуществ WordPress — возможности быстро публиковать контент — я решил поискать в другом месте.

Я обнаружил, что Джекилл был именно тем, что мне было нужно.

Представляя, Джекилл

Jekyll — это генератор статических блогов. Это означает, что вместо установки серверного программного обеспечения, созданного на таком языке, как PHP, вы используете командную строку на локальном компьютере для создания статических файлов (HTML, CSS и т. Д.).

Эти файлы создаются на основе:

  • Файл конфигурации.
  • Любые шаблоны, которые вы хотите определить.
  • Уценка файлов для сообщений в блоге.

Затем вы загружаете сгенерированные файлы на любой веб-сервер, и это ваш блог. Хотя это может звучать просто как отвратительная альтернатива WordPress, этот статический подход имеет ряд реальных преимуществ перед WordPress.

Давайте поговорим о них.

1. WordPress является излишним.

В наши дни WordPress — это в основном фреймворк для управления контентом. Он может делать практически все, и, если это то, что вы ищете, то придерживайтесь этого. У меня нет вендетты против WordPress. Это отличное программное обеспечение. Это просто эволюционировало вне его корней и вне того, что мне (и многим другим людям) нужно.

Для сравнения, Jekyll — это просто платформа для блогов. Для некоторых этот фокус будет ограничивающим, но если вы хотите вести только блог, то:

  1. У Джекилла есть все, что вам нужно, и ничего, чего вы не имеете . Вы не будете увязать в выборе и незначительном выборе, но вы также не будете испытывать недостатка в функциях, которые вам нужны больше всего.
  2. Письменный опыт не имеет аналогов . Поскольку ваш контент создан с использованием файлов Markdown, вы можете использовать любой текстовый редактор, который вы предпочитаете. Лично я использую Sublime Text, но подойдет любой другой вариант. Ваше предпочтение побеждает.
  3. Меньше шансов что-нибудь сломать . Это отчасти из-за небольшого охвата Jekyll, позволяющего значительно улучшить его, а также из-за того, что вы не имеете дело с привередливым серверным программным обеспечением.

«Лучший» инструмент всегда будет зависеть от контекста, но я все больше думаю, что более простая платформа, такая как Jekyll, достойна того, чтобы ее рассматривали в первую очередь.

2. WordPress борется под большой нагрузкой.

Спустя несколько месяцев после запуска моего блога, из-за скачка трафика сотни людей одновременно просматривали мой блог. Вот и все, подумал я. Моя тяжелая работа окупается. Затем блог рухнул, и он оставался разрушенным в течение следующих нескольких часов, поэтому то, что должно было стать большим днем ​​для блога, превратилось в шар напряжения, который заставил меня выглядеть как любитель.

Конечно, WordPress — не единственное серверное приложение, у которого возникают проблемы при получении большого объема трафика, но есть более чем несколько историй о сбоях блогов WordPress в неподходящее время — даже при всех оптимизация — и нет ничего глупее, чем беспокоиться о том, что ваш блог станет слишком популярным.

При переходе на Jekyll этот риск не существует:

  1. Загрузка статических файлов создает небольшую нагрузку на сервер . Количество нагрузки практически незаметно. Вам бы пришлось постараться (или иметь очень паршивого веб-хостинга), чтобы ваш блог рухнул.
  2. Вы можете разместить свой сайт на Amazon S3 . Это делает почти невозможным крах вашего блога, поскольку ресурсы будут автоматически масштабироваться по мере их использования. Есть несколько лучших источников душевного спокойствия.

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

3. WordPress работает медленно.

По тем же причинам, по которым WordPress борется под нагрузкой, WordPress работает медленно: он опирается на динамический код и вызовы базы данных. Вы можете быстро загрузить блог на WordPress, но это все равно что пытаться оптимизировать скорость черепахи. Вы просто не начинаете с правильной базы.

С другой стороны, оптимизировать блог Jekyll легко, поскольку вы можете:

  • Разместите весь свой блог на сервере под управлением nginx.
  • Сократите ваш HTML и CSS без использования плагина на стороне сервера.
  • Избегайте слишком сложных плагинов для кэширования.
  • Регулярно запускайте все ваши изображения через ImageOptim (который я нашел намного лучше, чем с помощью плагина SmushIt!).
  • Имейте намного больше прямого контроля над дизайном своего блога. (WordPress имеет хорошую поддержку для создания тем, но с Джекиллом не так уж и сложно начать.)

Но даже без оптимизации факта, что блоги Jekyll сделаны из статических файлов, достаточно, чтобы они загружались быстрее, чем большинство блогов WordPress. Просто если вы пройдете лишнюю милю, ваши блоги могут загружаться безумно быстро. (Мой блог загружается менее чем за секунду для большинства людей, и я мог бы пойти дальше.)

4. WordPress — растущая цель для хакеров.

Чем популярнее становится программное обеспечение, тем больше оно становится мишенью для недружественного хакера. Означает ли это, что ваша установка WordPress является бомбой замедленного действия, и что кто-то неизбежно будет с ней связываться? Нет.

За последние восемь лет я могу вспомнить только одно нарушение, когда кто-то установил вредоносное ПО в мой блог, когда я немного отставал в обновлении. Поэтому, принимая во внимание, насколько легко обновлять WordPres и сколько плагинов безопасности теперь доступно, нетрудно понять, сколько душевного спокойствия.

Это говорит:

  1. Наличие «большого» душевного спокойствия — это не то же самое, что обладание полным душевным спокойствием, и как для человека, который имеет дело с вторжениями вне WordPress, это достаточно болезненный процесс, и я бы предпочел полностью избежать его, если бы мог.
  2. Безопасность — это не только способность защищать от атак, но и способность быстро восстанавливаться от всего, что может пойти не так.

Преимущество Jekyll в том, что на сервере есть только статические файлы. Там нет ничего динамического, что может быть использовано. Есть ли другие способы, которыми хакер может проникнуть на ваш сайт? Конечно. Но только через постоянные угрозы, например, когда кто-то получает имя пользователя и пароль для вашего сервера. Нет никакого риска взлома хакера через эксплойт в плохо написанном плагине или через проблему внутри самого Jekyll.

Если атака произойдет, или если по какой-то другой причине будет «просто» потеря данных, процесс восстановления не может быть проще:

  1. Восстановите блог на своем локальном компьютере.
  2. Загрузите его снова на сервер.

Если вам нужен новый сервер, то пусть будет так. Там нет ничего «тяжелого» для перемещения, как базы данных, или что-то особенное для установки. Просто заплатите за новый сервер, загрузите файлы на него, и все. Вы вернулись в действии.

С точки зрения локальной потери данных, это еще одна проблема. Храните свой блог Jekyll в папке Dropbox, и он будет постоянно сохраняться. Добавьте такой инструмент, как Arq (с Glacier), и данные вашего блога будут безопаснее, чем, возможно, в данный момент. Стоимость также будет незначительной, так как статические файлы очень малы (и все же их легко хранить в течение длительного времени).

5. Хостинг на WordPress стоит дорого.

Основное решение проблем, которые я рассмотрел, — это платить больше за веб-хостинг. Есть даже такие хостинговые услуги, как Synthesis, которые специально предназначены для решения этих проблем и могут обеспечить удовлетворительный уровень душевного спокойствия.

Но эти услуги стоят дорого. Некоторые утверждают, что «вы должны тратить деньги, чтобы заработать деньги», но это не всегда имеет смысл. Например, борьба с моим блогом о видеоиграх заключается в том, что поля были такими низкими. Если бы я потратил лишние деньги на хостинг, это было бы значительной частью дохода. Может быть, это признак того, что что-то не так с самой бизнес-моделью, но я управлял бизнесом так, как хотел, и затраты были связаны с моим использованием WordPress, а не были неотъемлемым фактором в ведении блога.

Избегая этих хостов WordPress и оптимизируя чертовски мой блог, я смог улизнуть с счетом около 60 долларов в месяц, но блог все равно падал бы под (в основном) непредсказуемыми всплесками трафика.

Сравните это с моим новым, статичным блогом . Я мог получить 10000 посетителей в следующий час, и он не дрогнул, и все же это всего лишь 5 долларов в месяц для размещения на капельке Digital Ocean (с установленным nginx).

Чтобы сократить расходы, разместите свой блог на Amazon S3. Мало того, что он будет масштабироваться без ограничений, независимо от того, сколько трафика вы получаете, большинство людей потратит всего лишь пару баксов на хостинг. (Преимущество Digital Ocean заключается в скорости, поэтому я раскладываю крошечные лишние деньги.)

Вывод

В WordPress есть что любить, и, если вы обнаружите, что думаете «Но компромисс не стоит…» в ответ на любой из этих пунктов, то вы, вероятно, правы, и вам следует продолжать использовать WordPress.

Я не хочу толкать людей на Джекилла ради этого. Тем не менее, я считаю, что многие блоггеры (и многие читатели блогов) выиграют от перехода от динамического блога, так что это, по крайней мере, стоит вашего рассмотрения.