特定のSOAP API用のクライアントを作成しています。 5全体の通話時間を格納する2つの 源から計算GetPricesコールのSOAP呼び出し実行時間の測定サーバーログとクライアント間の差異
平均期間コール平均期間 を示しています。私は巨大な実行時間と私にこのことを告げたので、連絡APIの所有者を取得しています私たちのシステムをちょうど 25ミリ秒と呼んでいた日数は、同じ期間に の間、ほとんどの賭け人の平均と一致しています。 2つの送信元は、 がすべてのアプリケーション コンポーネント間のコールの継続時間を計算するSentry Logsと、APIサーバーからの間の転送時間( )を含むIISLogから取得された時間です。
同じGetPrices呼び出しでは、私はサーバーログより4倍長い平均0.08-0.1秒でした。
私の測定値とAPI所有者の測定値の間に大きな違いがあるのはなぜですか?
私は私の実行時間を計測する方法は非常に簡単です:
start_time = time.time()
# GetPrices call
end_time = time.time() - start_time
私が提供できる何かがあるのなら、私に知らせてください。
サーバの応答時間だけでなく、SOAPライブラリが応答を解析して関連オブジェクトに変換するのにかかる時間もあります。どのライブラリを使用していますか? – jordanm
@jordanm私はpython sudsライブラリを使用しています。このGetPricesによって返されるレスポンスはわずか11477バイトで0.01MBです。私は解析することが実行時間に大きな影響を与えるのではないかと疑います。それとも? – Marijus
プロファイラを使用して、ほとんどの実行時間が費やされた場所を特定できます。私は何年も前に石鹸呼び出しが処理に非常に長い時間を要したプロジェクトを持っていましたが、私たちが使っていたライブラリ(python-zsi)では非効率でした。騒ぎに切り替えると、パフォーマンスが大幅に向上しました。 – jordanm