0

私は、約 15 万人のユーザーがいる Web サイトに取り組んでいます。ユーザーの詳細 (drupal フィールドと profile2 フィールド) を含む csv ファイルを作成し、その csv を毎日別のサーバーにエクスポートする必要があります。

hook_cron に export 関数を実装し、関数内で user_load 関数呼び出しと 2 つの profile2_load_by_user およびその他のカスタム mysql クエリを実行します。

私が抱えている問題は、export_function が終了していないように見えることです。タイムアウトまたはメモリの問題である可能性があります。

ユーザー数を約 1000 に制限して機能をテストしたところ、正常に動作しました。

hook_cron を使用して大量のデータをエクスポートできるかどうか疑問に思っています。

4

1 に答える 1

1

本当にメモリまたはタイムアウトの問題であるかどうかを確認するには、サーバーのエラー ログを調べる必要があります。次に、要件を反映するように php.ini を微調整できます。memory_limitmax_execution_timeには理由があることに注意してください。これらの設定を変更するときは、サーバーへの影響を調査する必要があります。

より安全なソリューションは、多くの cron サイクルにわたってユーザー データをチャンクでエクスポートすることです。

データをエクスポートする代わりに、 Views データ エクスポートモジュールを確認することもできます。

于 2013-10-05T19:21:17.327 に答える