
100件くらいのキーワードを一つずつAPIに投げて、帰ってきたデータを1レコードずつDBに入れたいと考えています。
1キーワードに付き帰ってくるレコードが2万件くらいあって、普通に組んだだけではタイムアウトしてしまいます。
非同期処理も考えたのですがexecやPHPのオプションなどをいじくるのはサーバの制約でできなそうです。
普通こういうときはどうするのが一般的なのでしょうか。
(そもそもPHPで組まないのか・・・)
あと、レンサバでcronの設定ができるのですが、cronをPHPを設定した場合って、そのプログラムの動作時間はやはりmax_execution_timeが最大になってしまうのでしょうか。
よろしくおねがいします。
No.2ベストアンサー
- 回答日時:
画面で受けた命令をキューに入れ、cron 起動のバッチでキューを読み取って実行し、完了したら画面で告知しては如何でしょう
実装例:
//server/do.php
PHP でテーブル「命令キュー」に挿入する
HTTP 303 を返し wait.html を表示させる
//server/wait.html?id=12345
「お待ちください」を表示
AJAX で check.php を随時呼び出し、実行結果を確認
完了したなら result.html を表示
//server/check.php?id=12345
PHP でテーブル「命令キュー」が完了しているか確認
応答は AJAX で使いやすい JSON 形式で
//server/result.html?id=12345
「完了しました」を表示
$APP_HOME/queue_processer.php
cron で起動するバッチ
テーブル「命令キュー」を読み出し、命令が有れば遂行し、完了済みにテーブルを更新
PHP のバッチ起動の場合、max_execution_time の制限はなくなるはずです。
なるほど、私そんなにスキル高くないのでよくわかりませんが(笑)
画面でという発想はなかったです。
iMacrosみたいなブラウザ型のスクリプトでもいいかもしれません。
ちょっと採用するか微妙ですが参考になりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) プログラムの起動、利用について、使用期間を設定する方法 3 2023/08/06 21:03
- PHP クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したい 2 2022/07/28 15:29
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- PHP PHP ページング データベース 1 2022/06/16 10:30
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- JavaScript 指定時間になったら、WEBサイトの更新を自動で行うには…? 3 2022/04/28 22:14
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて 重複したものがあれば行を削除するとい 1 2023/02/27 18:49
- PHP アップロードファイルの数に応じてCSSを動的に変更したいのですが、方法がわかりません 3 2023/07/23 21:59
- C言語・C++・C# C言語:数値の桁数指定についての質問です。 8 2022/05/26 23:53
- 分譲マンション 分譲マンションの管理組合・理事長です。この難しい件はどうすれば良いでしょうか? 9 2022/07/20 01:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グーグル検索について
-
file_get_contents()の動きが読...
-
HTMLファイル内の行数を指定し...
-
PHPでhtmlファイル内のテキスト...
-
Perlで検索エンジン作成は可能!?
-
PHPを使った会員登録サイト
-
PHPでメールの送信(Gmail使用)
-
フォントの色を変えるには?
-
ツリーメニューを縮小させたい
-
mysqlへのデータ挿入
-
PHPの拡張子を見せない方法
-
クラスについて
-
Re: Cookieを使ってオブジェク...
-
サーバーによってはmb_send_mai...
-
PHPでサーバーにインストールさ...
-
Apache又はPHPのフォルダ名
-
Webアプリにおけるエントリポイ...
-
PHPで新しいウインドウで開く命...
-
自動で動くプログラミングについて
-
try~catch構文は、どういうメ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HPを開くとダウンロードページ...
-
社内イントラネットのHPにアク...
-
file_get_contents()の動きが読...
-
public_htmlと同じ階層にあるフ...
-
携帯ページにアドセンスをくっ...
-
そのページ内のある箇所のコン...
-
phpコードの戻り値をhtmlファイ...
-
VScode文字の色の変更について
-
index.phpって何ですか? 具体...
-
PHPのSEO
-
HTMLファイル内の行数を指定し...
-
PHPファイル内でCSSが反映されない
-
htmlを含まないphpファイルにも...
-
ワードプレスのhtmlファイル名...
-
PHPでのindex.htmlの生成ができ...
-
PHPのアップロードについて。FF...
-
jsファイルがうまく読み込めない
-
文系でHTMLしかわからない者です。
-
サーバーに送られたデータを計...
-
ヒアドキュメントの中で別ファ...
おすすめ情報