본문 바로가기

Spring

(3)
[Spring Boot] 웹소켓 연결 구현, 특정 사용자에게만 메세지 보내기, 서버로부터의 메세지 실시간 수신&처리 개발환경: Spring Boot 5.1.7.RELEASE 목차 1. 들어가기 전에... 2. SockJs란? 3. STOMP란? 4. 웹소켓 연결 구현 5. 특정 사용자에게만 메세지 보내기 6. 서버로부터의 메세지 실시간 수신&처리 1. 들어가기 전에... 보통 웹소캣 관련 개발 하면 실시간 채팅방 관련 기능을 떠올리기 쉽다. 내가 한 것은 이것과 아예 관련이 없지는 않은데(구현 방법을 참고함), 목적은 다르다. 클라이언트간의 대화에 중점을 둔 게 아니라 여러 클라이언트가 실시간으로 서버의 요청을 수신하고 그에 따른 처리도 하는것이다. 구현 목표는 다음과 같다. 1. 서버는 특정한 요청을 알맞은 대상(클라이언트)에게 전송한다. 3. 클라이언트는 수신받고 그에 따른 처리를 한다. 즉, 실시간으로 서버로부터..
[Spring] smtp 사용해서 이메일 보내기 개발환경: 스프링 3.1.1.RELEASE, java1.6, tomcat7, mybatis 목차 1. smtp란? 2. 사전 준비 3. 메일 보내기 1. smtp란? 간이 전자 우편 전송 프로토콜(Simple Mail Transfer Protocol, SMTP)은 인터넷에서 이메일을 보내기 위해 이용되는 프로토콜이다. 사용하는 TCP 포트번호는 25번이다. 상대 서버를 지시하기 위해서 DNS의 MX레코드가 사용된다. RFC2821에 따라 규정되어 있다. 메일 서버간의 송수신뿐만 아니라, 메일 클라이언트에서 메일 서버로 메일을 보낼 때에도 사용되는 경우가 많다. 2. 사전 준비 1. 이메일 전송 서버로 사용할 구글 계정을 준비한다. case1) 2단계 인증을 사용 안하는 계정일 경우 https://www...
[Spring] 스프링 quartz 주기적으로 작업 실행하기 개발환경: spring3.1.2, tomcat7, java 1.7, mybatis 목차 1. Quartz란? 2. Quartz 장단점 3. Quartz 구조 4. Quartz 사용법 1. Quartz란? Quartz는 Terracotta 라는 회사에 의해 개발된 Job Scheduling 라이브러리이다. 완전히 자바로 개발되어 어느 자바 프로그램에서도 쉽게 통합해서 개발이 가능하다. Quartz는 수십에서 수천 개의 작업도 실행 가능하며 간단한 interval 형식이나 Cron 표현식으로 복잡한 스케줄링도 지원한다. 2. Quartz 장단점 장점 DB 기반으로 스케줄러 간의 Clustering 기능을 제공한다. 시스템 Fail-over와 Random 방식의 로드 분산처리를 지원한다. n-memory Jo..