목록JAVA (4)
노하우 정리
1. 개요 Overview 이 글에서 스프링의 비동기 실행 지원asynchronous execution support과 @Async annotation에 대해 살펴볼 것이다. 간단히 설명하면, @Async 어노테이션을 빈bean에 넣으면 별도의 쓰레드에서 실행되는 것이다. 이를테면 호출자는 호출된 메소드가 완료될 때까지 기다릴 필요가 없다. 2. Async 기능 켜기 Enable Async Support 자바 설정Java configuration으로 비동기 처리enabling asynchronous processing를 쓰려면 간단히 설정 클래스에 @EnableAsync를 추가해주기만 하면 된다: @Configuration @EnableAsync public class SpringAsyncConfig {..
WAS, DBMS 서버 등과 연결되는 Socket 관련 프로그램에서 다음과 같은 오류 메세지가 자주 발생한다. Connection reset by peer, Connection reset, Broken Pipe 이런 에러가 발생해도 정상적으로 잘 서비스되기 때문에 별로 관심을 안가졌는데 직접 데몬 서비를 만들고 관련 클라이언트를 만들다 보니 어떤 경우에 이런 에러가 발생하는지 알아야지만 대처가 가능할 것 같아서 찾아 보았다. - java.net.SocketException: Connection reset by peer: socket write error 원인: write 시 상대방 socket close 된 경우 - java.net.SocketException: Connection reset 원인: re..
1. 프록시 패턴 정의 실제 기능을 수행하는 객체Real Object 대신 가상의 객체Proxy Object를 사용해 로직의 흐름을 제어하는 디자인 패턴입니다. 2. 프록시 패턴 특징 원래 하려던 기능을 수행하며 그외의 부가적인 작업(로깅, 인증, 네트워크 통신 등)을 수행하기에 좋습니다. 비용이 많이 드는 연산(DB 쿼리, 대용량 텍스트 파일 등)을 실제로 필요한 시점에 수행할 수 있습니다. 사용자 입장에서는 프록시 객체나 실제 객체나 사용법은 유사하므로 사용성이 좋습니다. 3. 프록시 패턴의 간단한 클래스 다이어그램 |---------------| 사용 |------| |Inteface |
int timeout = clientApiVO.getTimeout(); RequestConfig requestConfig = HttpClient.getDefaultRequestConfig(timeout); HttpClientBuilder httpClientBuilder = HttpClient.getDefaultHttpClientBuilder(requestConfig); httpClient = httpClientBuilder.build(); /************************************************************* * 연동 타임아웃 설정 구현 시작 (TEST CODE) ********************************************************..