총 게시물 38,594건, 최근 1 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[자바]

자바 서버 통신시 타임아웃 동안 내부 동작이 궁금합니다.

글쓴이 : adbb 날짜 : 2017-06-19 (월) 01:05 조회 : 277
글주소 : http://www.androidside.com/B49/167591
 
  KG아이티뱅크 박성민 선생님
서버 전문학원, 자바서버, MS/리눅스 서버, IT 취업 진로 상담
javastudy.or.kr
  C25.KR 아마존 웹서비스
아마존 웹호스팅, 오라클DB호스팅, 오로라DB호스팅등 AWS 운영지원 전문기업
c25.kr
  3D 디자이너 VAEGA
3D 전문 디자이너, 맞춤예산 제작가능, 최정상급 퀄리티 제공, 비교불가 가격
blog.naver.com/vaega1542
신청하기


안드로이드, 자바 그리고 다양한 질문에 대해 성실히 답해드립니다. Q&A Jang

안녕하세요 자바의 서버 통신에 대해 궁금한게 있어 질문을 드리고자 합니다.

서버로 요청을 보내고, 응답을 받을 때 URLConnection 같은 객체를 사용하고,
타임아웃도 지정하는 것으로 알고 있습니다.

만약 응답 받기에 실패한다고 가정했을 때
요청을 보내고 타임아웃까지 응답 대기하다가 종료하는 건가요?
아니면 내부적으로 계속 요청을 보내다가 타임아웃이 되면 종료하는건가요?




질문자가 자신의 포인트 5 점을 걸었습니다.
답변하시면 포인트 2을, 답변이 채택되면 포인트 4을 드립니다.

질문답변 게시판에서 궁금한 사항을 해결하셨다면, 애써 답변해주신 분께 잘 되었다고 따뜻한 댓글 한마디 남겨주세요.
그리고 답변해주신 분의 글을 '추천' 해주세요.
추천받으신 분에게 1포인트가, 추천하신 분에게도 1포인트가 적립됩니다. ^^

뉴키 2017-06-19 (월) 08:17
대기하다가 끝냅니다.

디버깅모드나 와이어샤크 같은걸로 찍어보시면 알 수 있죠.
댓글주소 추천 0 반대 0
맛타 2017-06-19 (월) 11:51
Timeout이 두가지가 있는데요 
ConnectionTimeout과 Read Timeout 이렇게 두개입니다.

Connection timeout은요 Host가 있다는 가정하에(없으면 커넥션리퓨즈) 
연결의 지연을 말합니다. 접속을 무한정 기다릴수 없으니 일정시간 기다렸다가 연결을 취소합니다.

Read Timeout은요 Connection이후 데이터를 받는 동안의 지연 시간을 말합니다.

URLConnection 은요 http프로토컬을 구현한 Connection 입니다. 
그렇기 때문에 http프로토콜을 준수하여 Socket통신을 구현했자고
http프로토콜은 connection -> request -> response - disconnect 이렇게 이루어지고요
각단계별 한번씩만 이루어 집니다. 
따라서 내부적으로 계속 요청이 이루어진다는건 있을순 없죠 
이과정에서 지연이 있다면 위 두가지 Timeout중 단계에 따라 발생하는것 이지요

질문하신분이 내부적으로 계속 요청하지 않을까 하는 생각을 하신것은
아마도 TCP/IP 프로토콜 부분이랑 착각하신것같네요 
물론 TCP/IP를 기반으로 Http가 있지만요 레이어 계층이 달라요
TCP/IP의 경우 통신상 바이너리 패킷단위로 잘못된건 다시 보내고 받는거지 
서버응답이 있고 없고의 단계는 아닙니다.


댓글주소 추천 0 반대 0
이전글  다음글  목록 글쓰기

 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기