2017-12-19 11 views
0

私はカテゴリをリストするためのページを持っています。カテゴリの下にはパラメータがあり、パラメータの下にはサブパラメータがあり、データは膨大です。巨大なデータを得るための快適なAPIの最適化

最近、私は同じものを開発し、テストしました。それは多くの時間がかかり、パフォーマンスが著しく低下します。その1つのページには約1600のAPI呼び出し(カテゴリごとにデータを取得するAPI呼び出し、パラメータ&のサブパラメータ)が存在するためです。私には2つの質問があります。私が正しくリコール

1) Which way is effective? a or b? 

    a) I have an API to get data for a parameter, so that I can make use of this call 1600 times to get data for all categories/parameters/sub-parameters. 

    b) Have one call to get all parameters/parameters/sub-parameters data 

2) Does AWS charge based on number of the calls? For example, having one call to get data in one shot is cheaper than 1600 calls to get data for each of categories and parameters. 
+0

あなたの2番目の質問に答えるには:私はあなたのAPIゲートウェイを使用していると思いますか?次に、[ここ](https://aws.amazon.com/de/api-gateway/pricing/)が価格設定シートです。 1 000 000コール(米国では3,50 $)で固定金額を支払うと、キャッシュとデータ転送のために別途料金を支払うことになります。だから私はあなたのために安くなるものを自分で計算する必要があると思います。 – creyD

+0

@creyDなので、コール数を減らすことをお勧めしますか? – AceLearn

答えて

0

は、AWSは、誰かがAPIを呼び出し、または任意の計算はあなたがそこにホスティングされているものは何でも上で行われているので、基本的にはいつでも、CPUアクティブ時間にあなたを充電します。

私はA)がロードをわずかに減らすので、より良い選択となると信じています(私はこれが意味することは、計算量は少なくなりますが、より頻繁に、全体的にプロセス全体がスピードアップし、大きいデータを小さな塊に分割することになります)、同時に多くの人が同時に要求している場合は、traffic congestionを作成しない可能性があります。

希望すると便利です。

0

私はこれがいくつかの要素に依存すると思います。全体のは、両方のモデルで転送されるデータが同じままであるため、おそらく良いオプションです。したがって、負荷と処理能力は非常に似ています。 Aでは、リスクが広がるという利点があります(1つのパッケージが紛失した場合、わずかな情報が失われてしまいます)、おそらくプロセッサの処理速度が向上します。

2番目の質問に答えるには:私はあなたのAPIゲートウェイを使用していると思いますか?その後、hereは価格設定シートです。 1 000 000コール(米国では3,50 $)で固定金額を支払うと、キャッシュとデータ転送のために別途料金を支払うことになります。だから私はあなたのために安くなるものを自分で計算する必要があると思います。

これがあなたの質問にお答えし、あなたを助けてくれることを願っています。

+0

あなたの答えに感謝します。私はAPIゲートウェイを使用していません。これはEC2サーバーです。 – AceLearn

+0

オンデマンド支払いモデルを使用している場合は、この価格は[こちら](https://aws.amazon.com/de/ec2/pricing/on-demand/)です。この価格表によれば、サーバーへの着信データ転送は無料です。あなたは時間単位で使用料を払っています。どのモデルを使用しているのかという疑問があります。強力なCPUを使用する場合は、モデル* B *を使用してみることができます。接続とデータ転送が十分に速い場合は、少しお金と時間を節約できます。あなたが非常に低いCPUを使用しているなら、私は* A *がまだ行く方法だと思います... – creyD

関連する問題