애플 릿 서버 가 위 챗 서버 시간 초과 요청

오늘 어떤 학생 이 애플 릿 을 테스트 하 는 과정 에서 문 제 를 발 견 했 습 니 다. 위 챗 공식 서버 인터페이스 가 시간 을 초과 하 는 것 을 발 견 했 습 니 다. 예 를 들 어 이 인터페이스 https://api.weixin.qq.com/sns/jscode2session 는 우리 애플 릿 이 로그 인 할 때 자신의 server 에서 위 챗 의 API 를 호출 하기 때 문 입 니 다. 이 인터페이스 가 시간 을 초과 하여 우리 의 로그 인 절차 도 끊 겼 습 니 다.가끔 인터넷 문제 인 줄 알 았 는데 테스트 서버 에서 안정 적 인 재현 시간 초과!그러나 로 컬 테스트 과정 에서 위 챗 서버 에 빠르게 응답 을 요청 합 니 다.음.. 이론 적 으로 위 챗 서버 는 문제 가 없 을 거 야..
서버 에 curl 위 챗 의 인 터 페 이 스 를 시도 해 보 세 요. 확실히 느 립 니 다. 저희 코드 에 시간 초과 가 3 초 라 고 설정 되 어 있 습 니 다. 눈대중 은 확실히 3 초 를 넘 어서 야 돌아 갑 니 다!다행히 친구 들 에 게 시간 초 과 를 5 초 로 바 꾸 라 고 했 는데 도 시간 초 과 는... 음, 조금 어색 하 다.ping api.weixin.qq.com 해 보 니 첫 번 째 가방 을 받 은 지 오래 되 었 고 뒤의 가방 은 평균 몇 십 밀리초 이 며 인터넷 도 괜 찮 을 것 같 습 니 다.
어 쩔 수 없습니다. 서버 이기 때문에 curl 만 사용 할 수 있 습 니 다. 이 도구 가 제공 할 수 있 는 지, 전체 요청 의 각 단계, 시간 이 어떻게 분포 되 어 있 는 지 보고 싶 습 니 다.검색 해 보 니 정말 이런 기능 이 있 습 니 다. 구체 적 인 조작 은 다음 과 같 습 니 다.
  • 특정한 디 렉 터 리 에서 파일 을 새로 만 듭 니 다. 예 를 들 어 curl-format.txt 내용 은 다음 과 같 습 니 다.
  •  time_namelookup:  %{time_namelookup}
    time_connect: %{time_connect}
    time_appconnect: %{time_appconnect}
    time_pretransfer: %{time_pretransfer}
    time_redirect: %{time_redirect}
    time_starttransfer: %{time_starttransfer}
    ----------
    time_total: %{time_total}
  • 같은 디 렉 터 리 에서 실행 curl 작업:
  • curl -w "@curl-format.txt" -o /dev/null -s "https://api.weixin.qq.com/sns/jscode2session?xxx=xxx&xx=aa"
    

    얻 은 결 과 는 다음 과 같다.
    인터넷 에서 찾 아 보 니 각 필드 의 의 미 는 다음 과 같다 (단 위 는 모두 초).
  • time_namelookup: DNS 도 메 인 이름 을 분석 할 때 https://zhihu.com ip 주소 로 변환 하 는 과정
  • time_connect: TCP 연결 이 만들어 지 는 시간, 세 번 의 악수 시간
  • time_appconnect: SSL / SSH 등 상부 프로 토 콜 이 연결 되 는 시간, 예 를 들 어 connect / handshake 의 시간
  • time_pretransfer: 처음부터 마지막 요청 까지 의 시간
  • time_redirect: 요청 부터 응답 까지 전송 시간
  • time_starttransfer: 요청 부터 첫 번 째 바이트 까지 전송 할 시간
  • time_total: 이번 요청 에 걸 린 모든 시간
  • 위의 캡 처 를 통 해 알 수 있 듯 이 우리 서버 에 DNS 도 메 인 이름 분석 단계 에서 5 초 밖 에 걸 리 지 않 았 는데 어쩐지 시간 이 초과 되 었 더 라 니..........................................
    문 제 를 찾 았 다 면 먼저 기계 에서 /etc/hosts 파일 을 수정 하고 위 챗 도 메 인 이름 의 IP 분석 을 써 서 이 문 제 를 잠시 복원 했다.
    관련 자료
  • curl 테스트 네트워크 사용 요청 시간
  • curl 명령 을 사용 하여 요청 한 시간 소모 상황 분석
  • 다음으로 전송:https://juejin.im/post/5ce2a64af265da1b7a4b46e5

    좋은 웹페이지 즐겨찾기