2016-04-27 9 views
0

私はプログラミングの初心者です。この質問に関連して、ウェブの大きな断片を検索したに違いありません。私は答えがどこかにあると確信していますが、私はおそらく単にそれを見つけるための正しい用語を使用していないのです。それにもかかわらず、私は最善を尽くし、私は完全に立ち往生しています。私はここの人々が感情を理解し、助けに気にしないことを願っています。API呼び出しを実行する最も効果的な方法

私は現在、データ駆動型のWebアプリケーションに取り組んでいます。これは、アウトソーシングされた開発者と一緒にビルドしており、プログラミングについてさらに学んでいます。私はそれについていくつかの錆びた知識を持っていますが、私は数年前からビジネス指向の非技術的な役割に取り組んできました。そして技術的な知識がほこりを集めました。

上記ウェブアプリケーションは、MySqlデータベースを使用して情報を格納します。このMySqlデータベースには、現在、200,000の変数(会社名)を含むテーブルがあります。私はそれらの会社に関するいくつかの追加データを返すために、サードパーティのjson RESTful APIを通じてこれらの会社名を実行したいと思います。

ここには2つの質問がありますが、私はストレートな回答を期待していません。

1. 20万の変数を使用して、自動的に200,000回の呼び出しを行って後のデータを取得するスクリプトを実行するにはどうすればよいでしょうか。このデータをjsonまたはcsvファイルに保存してMySqlにインポートするにはどうすればよいですか?私はcurlを使って単一のAPIリクエストを作成する方法を知っていますが、そのような自動化された大量のリクエストは私にとって謎です。私はそれからJsonファイルを作成する必要があるのか​​、何らかの理由で要求を待ち行列に入れるべきかどうかわかりません。

2.上記のAPIは、periosの5分あたり600コールに制限されています。APIコールの最大量に達したときにスクリプトが一時停止し、正常に戻る指定された時間が経過すると?どの言語がjson RESTful APIとやりとりして問題No1に記述されているスクリプトを書くのが最善でしょうか?

ありがとうございました。

カム

答えて

0

あなたが使っているものを、サーバー側言語は言及しませんが、概念はすべてのために同じになる - 作り、結果セットを、クエリがあなたの200K変数を取得するためにループを作りますそれぞれのAPIへのcurl呼び出し、結果を配列に格納し、jsonはループの最後に配列をエンコードし、結果をファイルにダンプします。期間ごとのリクエストの制限については、ほとんどの言語には何らかの一時停止機能がありますが、PHPではsleep()です。他のすべてが失敗した場合は、処理を遅延させるために、各呼び出しに何もしないループ(時間を要します)を入れることができます。

+0

返信いただきありがとうございます。私は現在Flaskフレームワークを使ってWebアプリケーションを構築しているので、サーバー側の操作はPythonで書かれています。 –

関連する問題