WPサイトのv2を立ち上げるための効果的な戦略はありますか?


12

私のチームと私は、かなりの量のコンテンツと彼らが作成したカスタムテーマを備えた既存のWordPressサイトを持っているクライアントと協力しています。これはグループブログです。つまり、世界中に数人のブロガーがいて、常にコンテンツを追加および編集しています。

私たちの仕事は、かなり新しい機能を備えたまったく新しいテーマを作成することです。これらの機能の一部には、新しいカスタムウィジェット、プラグイン、データベースフィールドが必要です。

現在、独自の開発マシンを使用して、単一の開発サーバーに統合しています。すべてのコードはSVNでバージョン管理されています。私たちが指定したDBAは、現在データベースの変更を手動でdev DBにマージしていますが、すぐに自動化できることを願っています。

量産リリースプロセスについて話し始めたところです。意味:完了したら、どのようにすればすべてのカスタムコードをできるだけスムーズに運用(ライブ)サーバーに移行できますか?

私たちはいくつかの計画を念頭に置いていますが、他の人もこの問題にどのように取り組んでいるか聞いてみたいです。従うべきベストプラクティスや回避すべき既知の落とし穴はありますか?

回答:


4

SethMerrickのアドバイスに従えば、IPアドレスを変更する前に、適切なDNSレコードのTTLを5分または数時間(現在のTTLによって異なります)に下げることで、切り替え時間を大幅に短縮できます。

これを行うことで、リモートDNSサーバーにアドレスを5分間だけキャッシュするように指示しています。IPを変更したら、TTLを以前の値に増やすことができます。影響をさらに最小限に抑えるには、トラフィックの少ない期間にスイッチオーバーを実行します。


偶然にもそれを始めました。それは間違いなく役立ちます。長い展開期間は許されません。そのヒントを追加していただきありがとうございます!
マイク・リー

TTLを変更する必要があることに注意してください IPを実際に変更する前にを。言い換えると、TTLが1週間の場合、IPを変更する1週間前にTTLを5分に変更し、そうすることで全員が新しいTTLになるようにする必要があります。
ダニエルC.ソブラル

2

これが適用可能かどうかはわかりませんが、トラフィックの多いサイトを同時に移行およびアップグレードする同様のプロセスを実行しました。

基本的な戦略は、ステージングサーバーで作業し、すべての準備が整ったら、ライブサーバーでmysqlダンプを実行し、ステージングサーバーにインポートし、必要なクリーンアップを行ってから、DNSレコードをステージングサーバーに向けることでした。ステージングサーバーが新しいライブサーバーになります。

トリッキーなビットは、DNS伝播中に蓄積されたすべてのデータをステージングサーバー(現在はライブサーバー)にマージすることです。つまり、mysqlのダンプ/ DNSの更新を行ってからDNSの伝播が完了するまでに30時間経過すると、古いサイトから新しいサイトに30時間のレコードを選択的にマージする必要があります。

シームレスなプロセスではありませんが、1週間後にはすべてのねじれが滑らかになりました。


このシナリオでは、移行されないサイトへの変更を防ぐために、DNSの移行中に古いサイトを効果的に読み取り専用にしますか?
トレバーブランブル

これは、移行中に新しいデータが古いサイトのデータベースに追加されるのを防ぐための代替アプローチです。ただし、上記の方法では、移行中に古いサイトがアクティブのままになり、移行中に表示された余分なdbエントリ(新しい投稿、コメントなど)が新しいサイトに手動でマージされます。編集:TTLレコードに関するacterryの提案は素晴らしいアドバイスであることを言及したかっただけです。
SethMerrick

似たようなことをしました。シームレスではありませんが、ちょっと、それは動作します。
マイク・リー

2

@Mike Lee:すばらしい質問であり、WordPressの聖杯の1つ(またはDrupal、Joomlaなど、私がよく知っているメインストリームオープンソースCMSのいずれか)

確かにあなたのユースケースに対処することを意図したものではありませんが、 WordPress Answers Exchangeで利用可能にしたばかりのベータレベルのプラグインを説明する関連する質問に対する私の答えをチェックしください WPの移行ウェブホストを、それは創造的な命名に来るとき(はい、私は吸います)

しかし、あなたがプラグインで説明するユースケースを解決したいので、現在それを達成する方法を考えています。私はそれにアプローチする方法は一般的にそれを解決することをあきらめ、代わりにWordPressに存在する既知のパターンに対処し、他の人に「特別なユースケースのために私のプラグインフック」。また、WordPressのデータと構造をPHPファイルのデータとしてシリアル化し、ソースコード管理システムがデルタを適用してソースの現在のバージョンに到達するように、将来のプラグインがそれらの変更をデルタとして適用できるようにすることも考えていますコード。

ですから、あなたの問題に完全に答えたり解決したりするわけではありませんが、あなたが考えのために良い食べ物を与え、あなたや他の誰かが最終的な解決策に協力したいと願っています。


WP Migrate Webhostsは、非常に必要なプラグインのように聞こえます。それを共有してくれてありがとう、そしてこのフィードバック!
マイク・リー

はい、そう思います。私と他の人がそれを進化させて、非常に便利になるようにコラボレーションを手に入れたいです!賛成票をありがとう。
MikeSchinkel
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.