IT한 것/java 5

HttpURLConnection 이용하여 JSON 전송시 서버가 응답이 없는 경우

아래는 java의 기본 제공 기능을 이용하여 웹 서버에 통신을 해서 JSON 데이터를 주고 받으려고 작성한 코드이다 conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.setDoInput(true); conn.setDefaultUseCaches(false); OutputStream os = conn.getOutputStream(); os.write(message); os.close(); InputStream is = conn.getInputStream(); while (is.available() > 0) { baos.write((char) is.read()); }..

IT한 것/java 2021.04.03

Servlet - Session Clustering, Context Clustering

대부분의 Servlet 개발자 분들은 알고 계실지 모르지만, 알게된 김에 한번 정리해본다. WAS는 instance 별로 정보를 관리한다. 물론 DB에도 중요한 정보를 저장하고 관리한다. 그중 일부 정보는 굳이 DB로 저장할 필요가 없다. (휘발성이어도 어느 조건까지만 유지되면 되는 정보) instance 별로 할 수 있는 작업의 임계치가 존재한다. 이를 극복하기 위해 여러개의 instance를 묶어 전체 적인 임계치를 상승시킨다 여기에서 고민거리가 생긴다, instance1에 접속해서 로그인 한 사용자의 다음 HTTP Request는 instance1을 보장 할 수 없는 경우가 발생한다. (web server나 L4에서 보장 해주기도 하지만, 이것을 사용 못하는 경우도 존재함) 그럼 그 사용자가 ins..

IT한 것/java 2021.04.03

NIO의 select 대기 시간이 길어지는 현상.

java 간의 통신을 구현하는데, 데이터길이를 보내고, 그 길이만큼 데이터를 보내는 구조이다.때문에 select를 두번 호출하도록 구현하였는데, 요상하게 이런식으로 구현했더니, 심각할 정도로 성능이 나오지를 않았다.c로 구현할때는 별 이상 없던거 같은데 말이다. 동일한 네트워크간의 통신인데 한번의 송 수신 시간이 50~80ms 정도 소요되었다. select를 한번만 호출하도록 수정하니 0~1ms 정도 소요된다.이게 맞지. ;;;

IT한 것/java 2013.11.11

서블릿 필터 개발시 주의할 점.

서블릿 필터 개발시 주의할 점 요놈의 필터를 개발할때에 반 필수적으로 ServletRequest, ServletResponse 인터페이스를 구현하거나 상속 받는다. 가장만만한 것이 랩핑을 이용하는 것이다. 뭐 자세한 방법이야 다들 알아서 잘들 할테지만, 최근 사정상 gzip 필터를 이용할 일이 있었는데, 문제 되는 것들이 많이 보였다. 요약하자면, ServletResponse는 문자열 용으로 쓸 PrintWriter, 바이너리 용으로 쓸 ServletOutputStream 두가지를 사용하는데, 문제있는 gzip filter 들은 요, ServletOutputStream 만을 고려하여 만들어져 있었다. 물론 filter를 적용한 Web Application Server에 따라서 다를 수 있겠지만, 본인이 ..

IT한 것/java 2008.09.15

EnterpriseJavaBean 3.0 소개

Introduction to Enterprise JaveBeans 3.0 by Lynn Munsinger EJB 3.0 specification는 과거보다 더 쉽게 Enterpsise JavaBens을 개발할 수 있게 해준다. 아마도 처음으로 EJBs 개발을 하는 사람이라면 기쁜 소식일 것이다. 만일 그러한 경우라면, 축하한다, 당신은 과거 EJB 개발자들 겪은 수많은 난관을 더이상 겪지 않아도 된다, 그리고 EJB 3.0 개발의 간편함을 즐길 수 있다. 그렇지만 개발을 시작하기 전에, 당신이 Enterprise JaveBeans가 무엇인지 이것들을 제공하는 목적이 무엇인지 알고싶을 수도있다. 이 글은 EJBs의 기본과 J2EE 어플리케이션에서 어떻게 활용될 수 있는지를 설명한다. EJB가 무엇인가? E..

IT한 것/java 2006.04.21