XML 형식으로 응답하는 서블릿이 있습니다.HTTP 클라이언트가 연결을 닫아야합니다.
클라이언트가 httpsURLConnection을 통해이 서블릿에 연결합니다. 고객이 connection.disconnect()
으로 전화하지 않으면 문제가 발생합니까? 그는 task=getSomeData,...etc
같은 새로운 매개 변수를 게시 할 수 있습니다 성공하면,
url = "https://abc.com/ws/servlet?task=login"
openconnection()...
이제 클라이언트가 사용자 이름과 암호를 게시 할 수 있습니다
이 시나리오를 수행 할 수 있습니다. 연결 해제하기 전에.
모든 Connection에 대해 클라이언트는 새로운 httpsession이됩니다.
클라이언트가 connection.dissconnect()를 호출하지 않으면 세션 시간 초과 후 연결이 자동으로 종료됩니까? 그렇지 않다면 언제? 얼마나 오래 살아 있을까요? sooomany "UNdisconnected"연결이있는 경우 서버에 문제가 있습니까?
UPDATE :이 클라이언트가 연결 해제를 호출하지 않을 경우 샘플 클라이언트
HttpsURLConnection conn = null;
InputStream inputstream = null;
try{
URL url = new URL("https://abc.com/ws/servlet");
SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
conn = (HttpsURLConnection)url.openConnection();
conn.setSSLSocketFactory(sslsocketfactory);
inputstream = conn.getInputStream();
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(inputstream);
......;
}catch(Exception ex){
ex.printStackTrace();
}
finally{
try {
if(inputstream != null)
inputstream.close();
if(conn != null)
//conn.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
클라이언트이 경우에는 시간 제한을 설정하지,하는 타임 아웃) (서버에 사용되는? 서블릿 컨테이너 커넥터 시간 초과?하지만이 값을 변경하면이 컨테이너 내의 모든 응용 프로그램에 영향을 미칩니다.
Tomcat 커넥터의 기본 시간 초과는 20000 = 2 분입니다. 최대 2 분만 열 수 있습니다. 2 분이 지나면 자동으로 연결이 끊어 집니까?
많은 감사.
메쏘드가 아니라면 많은 죽은/유휴 (접속되지 않은) 연결 풀링은 서버의 성능에 영향을 미치지 않아야합니까? 다른 말로하면 : 나는이 죽은 연결에 대해 걱정해야만 하는가? –
아니요, 풀과 서버가 걱정합니다. – EJP
정보를 보내 주셔서 감사합니다. –