특정 SOAP API에 대한 클라이언트를 작성하고 있습니다. 5 걸쳐 통화의 지속 시간을 저장하는 두 소스로부터 계산 GetPrices 호출서버 로그와 클라이언트 사이의 SOAP 호출 실행 시간 측정 차이점
평균 지속 된 전화 평균 기간 을 보여 나는 거대한 실행 시간과 나에게이 말 때문에 연락 API 소유자 받고 있어요 도박꾼이 우리 시스템을 그냥 25 밀리 초라고 부르는 날은 같은 기간 동안 가장 많은 삿대를 젓는 사람의 평균과 일치합니다. 두 소스는 Sentry Logs이며, 은 모든 응용 프로그램 구성 요소 사이의 호출 시간을 계산하고 API 서버에서 PUTTER 호출 시스템까지의 전송 시간을 포함하는 IISLog에서 가져온 시간을 계산합니다.
동일한 GetPrices 호출에 대해 정확히 말하면 서버 로그보다 4 배 긴 평균 0.08-0.1입니다.
아마도 측정 량과 API 소유자의 측정치간에 큰 차이가있을 수 있습니다.
내 실행 시간을 측정하는 방법은 매우 간단합니다 :
start_time = time.time()
# GetPrices call
end_time = time.time() - start_time
내가 제공 할 수있는 뭔가가 있다면 알려 주시기 바랍니다.
서버 응답 시간뿐만 아니라 비누 라이브러리가 응답을 구문 분석하여 관련 개체로 변환하는 데 걸리는 시간도 측정 할 수 있습니다. 어떤 라이브러리를 사용하고 있습니까? – jordanm
@jordanm python suds 라이브러리를 사용하고 있습니다. 이 GetPrices에 의해 반환 된 응답은 겨우 11477 바이트이며 0.01MB입니다. 나는 파싱이 실행 시간에 많은 영향을 미친다는 것을 의심 스럽다. 아니면 그렇습니까? – Marijus
프로파일 러를 사용하여 대부분의 실행 시간이 소비 된 곳을 확인할 수 있습니다. 나는 비누 호출이 처리하는 데 오랜 시간이 걸렸던 몇 년 전에 프로젝트를 가졌지 만, 나중에 우리가 사용하고있는 라이브러리 (python-zsi)에서 비효율적이라는 것을 알게되었습니다. 비눗물로 전환하면 성능이 크게 향상되었습니다. – jordanm