thunderror
  • 0
Новичок

Есть ли у вас какие-либо эффективные стратегии запуска v2 сайта WP?

  • 0

Моя команда и я работаем с клиентом, у которого есть существующий сайт WordPress с достаточным количеством контента и собственной темой, которую они создали. Это групповой блог, то есть в нем есть несколько блоггеров по всему миру, которые постоянно добавляют и редактируют контент.

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

В настоящее время мы работаем на наших собственных машинах для разработки и интегрируем их в единый сервер разработки. Весь код версии в SVN. Наш назначенный администратор базы данных прямо сейчас вручную объединяет любые изменения базы данных с базой данных разработчиков, хотя, надеюсь, он сможет автоматизировать это в ближайшее время.

Мы только начали говорить о нашем процессе выпуска продукции. Значение: как только мы закончим, как мы собираемся перенести весь наш пользовательский код на рабочий (рабочий) сервер плавно и с минимальными перерывами?

У нас есть несколько планов, но я хотел бы услышать, как другие тоже решили эту проблему. Существуют ли какие-либо передовые методы, которым следует следовать, или известные ловушки, которых следует избегать?

Share
  1. Если вы последуете совету SethMerrick, вы можете значительно сократить время переключения, снизив TTL для соответствующих записей DNS до 5 минут или около того за несколько часов (в зависимости от текущего значения TTL) перед сменой IP-адреса.

    Делая это, вы указываете удаленным DNS-серверам кэшировать адрес только на 5 минут. Как только вы измените IP, вы можете увеличить TTL до того, что было раньше. Чтобы еще больше свести к минимуму эффект, выполняйте переключение в период низкого трафика.

    • 0
  2. Я не уверен, применимо ли это, но я только что прошел аналогичный процесс одновременной миграции и обновления сайта с высокой посещаемостью.

    Основная стратегия заключалась в том, чтобы работать на промежуточном сервере, затем, когда все было готово, сделать дамп mysql на рабочем сервере, импортировать его на промежуточный сервер, выполнить любую необходимую очистку, а затем указать записи DNS на промежуточный сервер, вызывая промежуточный сервер, который станет новым рабочим сервером.

    Хитрость заключается в том, чтобы затем объединить все данные, которые накапливаются во время распространения DNS, с промежуточным сервером (который теперь является рабочим сервером). Другими словами, если между тем, когда вы делаете дамп/обновление DNS mysql, и завершением распространения DNS, проходит 30 часов, вам придется выборочно объединить 30 часов записей со старого сайта на новый.

    Это не гладкий процесс, но к тому времени, когда у нас была неделя в пути, все перегибы сгладились сами собой.

    • 0
  3. @Mike Lee: Отличный вопрос и один из святых Граалей WordPress (или любой из основных CMS с открытым исходным кодом, с которыми я знаком, например, Drupal, Joomla и т. д.)

    Хотя это, конечно, не предназначено для вашего варианта использования, ознакомьтесь с моим ответом на связанный вопрос, в котором описывается плагин бета-уровня, который я только что сделал доступным через WordPress Answers Exchange под названием WP Migrate Webhosts (да, я отстой, когда дело доходит до творческого именования.)

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

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

    • 0

Оставить ответ

You must login to add an answer.