web-dev-qa-db-ja.com

ブラウザーが正しく閉じられている場合、Batch APIは引き続き実行されませんか? Drushでバッチを実行できますか?

ブラウザが閉じてもバッチAPIは引き続き実行できますか?そうでない場合、Drushでバッチを実行できますか?非常に多くのデータを移行する必要があり、ローカルマシンで一度に1つずつすべてのアイテムをインポートするのを待つ時間はありません。

現在、op呼び出しごとに1つのアイテム(グループ、ユーザー、ブログ、ファイルなど)をインポートするようにバッチプロセスを設定しています。ただし、速度を向上させるために、呼び出しごとに50〜100に変更します。しかし、私は昨夜、私のグループだけで実行しました。約800のグループで実行するには、ほぼ1時間かかりました。

これは、複数のWebサイトから1つの統合サイトへのデータ移行の一部です。考え?提案? Drushは私を助けてくれますか?

編集:移行の性質上、このために独自のエクスポート/インポートスクリプトをロールバックしました(複数のDrupal 4.7サイトは高度にカスタマイズされており、コアがDrupal 6にハッキングされている可能性があります) 。エクスポートされたデータファイルが既に作成され、準備ができています。私はこの狂気のインポート部分をテストしています。

2
Patrick

可能性があるようですが、試しましたか drushを使用したバッチジョブの処理

3
tostinni

Drupal Queueの場合のジョブのように聞こえます。BatchAPIの代替としてそれを調べてください。これはDrupal 7に含まれています。Drupal contribの6バックポート。

3
Bojan Zivanovic

複数のサイトのコンテンツを1つのサイトにインポートして、drushをBatch APIで正確に使用しました。インポートされたコンテンツの合計には、800個のユーザーアカウント、数千のノードなどが含まれていました。合計実行時間は30分程度でした。

基本的に、コンテンツタイプ(またはその他)ごとに1つずつ、ソースサイトのデータベースからノード(またはその他)をロードし、APIを使用してそれらを保存するための多数のphpスクリプトを記述しました。これらのスクリプトで drushを使用したバッチジョブの処理 のパターンを使用し、シェルスクリプトでdrushコマンドを使用してすべてを実行しました。

2
xjm