Submit Search
Upload
Spring-WebSocket 기반 Full-Featured 채팅 구현
•
1 like
•
1,252 views
H
Hongchae Lee
Follow
Spring-WebSocket 및 STOMP 프로토콜을 사용한 채팅 서버 구현
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 24
Download now
Download to read offline
Recommended
WebSocket 기반 쌍방향 메시징
WebSocket 기반 쌍방향 메시징
trustinlee
실시간통신
실시간통신
Woojing Seok
Web Socket
Web Socket
ymtech
Web socket
Web socket
ymtech
웹소켓 (WebSocket)
웹소켓 (WebSocket)
jeongseokoh
Linux Ubuntu 9.10 Desktop 에서 Elgg 설치하기
Linux Ubuntu 9.10 Desktop 에서 Elgg 설치하기
sibalmonkeys
minSW_Java
minSW_Java
SW Min
Web Socket API
Web Socket API
JeongHwan Jang
Recommended
WebSocket 기반 쌍방향 메시징
WebSocket 기반 쌍방향 메시징
trustinlee
실시간통신
실시간통신
Woojing Seok
Web Socket
Web Socket
ymtech
Web socket
Web socket
ymtech
웹소켓 (WebSocket)
웹소켓 (WebSocket)
jeongseokoh
Linux Ubuntu 9.10 Desktop 에서 Elgg 설치하기
Linux Ubuntu 9.10 Desktop 에서 Elgg 설치하기
sibalmonkeys
minSW_Java
minSW_Java
SW Min
Web Socket API
Web Socket API
JeongHwan Jang
막하는 스터디 첫 번째 만남 Node.js
막하는 스터디 첫 번째 만남 Node.js
연웅 조
Startup JavaScript 9 - Socket.IO 실시간 통신
Startup JavaScript 9 - Socket.IO 실시간 통신
Circulus
vert.x 를 활용한 분산서버 개발하기
vert.x 를 활용한 분산서버 개발하기
John Kim
Jung jaeyeoup
Jung jaeyeoup
ssuser2a0d74
챗봇 시작해보기
챗봇 시작해보기
성일 한
Python 으로 Slackbot 개발하기
Python 으로 Slackbot 개발하기
성일 한
채팅 소스부터 Https 주소까지
채팅 소스부터 Https 주소까지
Kenu, GwangNam Heo
Node.js 첫걸음
Node.js 첫걸음
SeungHyun Lee
TCP echo 서버 및 클라이언트 예제 스터디
TCP echo 서버 및 클라이언트 예제 스터디
quxn6
.net core 에서 SignalR 사용해보기
.net core 에서 SignalR 사용해보기
Ji Lee
.NET에서 비동기 프로그래밍 배우기
.NET에서 비동기 프로그래밍 배우기
Seong Won Mun
자바 다중 채팅 프로그램
자바 다중 채팅 프로그램
Hwangcy
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
John Kim
AWS Meetup 프리젠테이션.pdf
AWS Meetup 프리젠테이션.pdf
AlexLee226686
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
Tommy Lee
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Channy Yun
Spring 4.x Web Application 살펴보기
Spring 4.x Web Application 살펴보기
Ji Heon Kim
[명우니닷컴]웹보안채팅 Isyouchat
[명우니닷컴]웹보안채팅 Isyouchat
Myeongun Ryu
파이썬 웹 프로그래밍 2탄
파이썬 웹 프로그래밍 2탄
SeongHyun Ahn
Progressive Web App(PWA) 테코톡 발표자료 - 마르코(장원석)
Progressive Web App(PWA) 테코톡 발표자료 - 마르코(장원석)
Wonseok Jang
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
JMP Korea
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
JMP Korea
More Related Content
Similar to Spring-WebSocket 기반 Full-Featured 채팅 구현
막하는 스터디 첫 번째 만남 Node.js
막하는 스터디 첫 번째 만남 Node.js
연웅 조
Startup JavaScript 9 - Socket.IO 실시간 통신
Startup JavaScript 9 - Socket.IO 실시간 통신
Circulus
vert.x 를 활용한 분산서버 개발하기
vert.x 를 활용한 분산서버 개발하기
John Kim
Jung jaeyeoup
Jung jaeyeoup
ssuser2a0d74
챗봇 시작해보기
챗봇 시작해보기
성일 한
Python 으로 Slackbot 개발하기
Python 으로 Slackbot 개발하기
성일 한
채팅 소스부터 Https 주소까지
채팅 소스부터 Https 주소까지
Kenu, GwangNam Heo
Node.js 첫걸음
Node.js 첫걸음
SeungHyun Lee
TCP echo 서버 및 클라이언트 예제 스터디
TCP echo 서버 및 클라이언트 예제 스터디
quxn6
.net core 에서 SignalR 사용해보기
.net core 에서 SignalR 사용해보기
Ji Lee
.NET에서 비동기 프로그래밍 배우기
.NET에서 비동기 프로그래밍 배우기
Seong Won Mun
자바 다중 채팅 프로그램
자바 다중 채팅 프로그램
Hwangcy
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
John Kim
AWS Meetup 프리젠테이션.pdf
AWS Meetup 프리젠테이션.pdf
AlexLee226686
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
Tommy Lee
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Channy Yun
Spring 4.x Web Application 살펴보기
Spring 4.x Web Application 살펴보기
Ji Heon Kim
[명우니닷컴]웹보안채팅 Isyouchat
[명우니닷컴]웹보안채팅 Isyouchat
Myeongun Ryu
파이썬 웹 프로그래밍 2탄
파이썬 웹 프로그래밍 2탄
SeongHyun Ahn
Progressive Web App(PWA) 테코톡 발표자료 - 마르코(장원석)
Progressive Web App(PWA) 테코톡 발표자료 - 마르코(장원석)
Wonseok Jang
Similar to Spring-WebSocket 기반 Full-Featured 채팅 구현
(20)
막하는 스터디 첫 번째 만남 Node.js
막하는 스터디 첫 번째 만남 Node.js
Startup JavaScript 9 - Socket.IO 실시간 통신
Startup JavaScript 9 - Socket.IO 실시간 통신
vert.x 를 활용한 분산서버 개발하기
vert.x 를 활용한 분산서버 개발하기
Jung jaeyeoup
Jung jaeyeoup
챗봇 시작해보기
챗봇 시작해보기
Python 으로 Slackbot 개발하기
Python 으로 Slackbot 개발하기
채팅 소스부터 Https 주소까지
채팅 소스부터 Https 주소까지
Node.js 첫걸음
Node.js 첫걸음
TCP echo 서버 및 클라이언트 예제 스터디
TCP echo 서버 및 클라이언트 예제 스터디
.net core 에서 SignalR 사용해보기
.net core 에서 SignalR 사용해보기
.NET에서 비동기 프로그래밍 배우기
.NET에서 비동기 프로그래밍 배우기
자바 다중 채팅 프로그램
자바 다중 채팅 프로그램
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
AWS Meetup 프리젠테이션.pdf
AWS Meetup 프리젠테이션.pdf
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Spring 4.x Web Application 살펴보기
Spring 4.x Web Application 살펴보기
[명우니닷컴]웹보안채팅 Isyouchat
[명우니닷컴]웹보안채팅 Isyouchat
파이썬 웹 프로그래밍 2탄
파이썬 웹 프로그래밍 2탄
Progressive Web App(PWA) 테코톡 발표자료 - 마르코(장원석)
Progressive Web App(PWA) 테코톡 발표자료 - 마르코(장원석)
Recently uploaded
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
JMP Korea
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
JMP Korea
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP Korea
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
JMP Korea
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
JMP Korea
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP Korea
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
Jay Park
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP Korea
Recently uploaded
(8)
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
Spring-WebSocket 기반 Full-Featured 채팅 구현
1.
Spring-WebSocket 기반 Full-Featured 채팅
구현
2.
실시간 웹 소셜 피드,
알림, 채팅 등
3.
웹의 진화 HTTP 1.1
> Ajax > WebSocket > HTTP/ 2
4.
이벤트기반 응답의 구현
방 법
5.
Polling Ajax + setInterval
6.
Comet (Ajax Push) Long
Polling HTTP Streaming
7.
WebSocket HTTP 포트를 사용하는
TCP 상의 쌍방향 통신
8.
WebSocket API https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
9.
var ws =
new WebSocket(‘ws://localhost/ws'); ws.onopen = function() { ws.send(‘hello’); }; ws.onmessage = function(e) { console.log(‘message’, e.data); }; ws.onclose = function(e) { console.log(‘close’, e.code); };
10.
SockJS 웹소켓(형) 객체를 제공하는
cross-browser 라이브러리 https://github.com/sockjs/sockjs-client
11.
var sock =
new SockJS(‘ws://localhost/ws'); sock.onopen = function() { sock.send(‘hello’); }; sock.onmessage = function(e) { console.log(‘message’, e.data); }; sock.onclose = function() { console.log(‘close’); };
12.
STOMP 웹소켓 서브 프로토콜 Spring
WebSocket 에서 지원
13.
stomp.js
14.
var sock =
new SockJS(‘ws://localhost/ws'); var client = Stomp.over(sock); client.connect({}, function() { client.subscribe("/topic/test", function(message) { console.log(message); }); }); client.send("/topic/test", {}, "Hello, STOMP"); client.disconnect(function() { console.log('disconnected.'); };
15.
Spring WebSocket
16.
17.
@Configuration @EnableWebSocketMessageBroker public class WebSocketConfig
implements WebSocketMessageBrokerConfigurer { @Override public void registerStompEndpoints(StompEndpointRegistry registry) { registry.addEndpoint(“/sockjs").withSockJS(); } @Override public void configureMessageBroker(MessageBrokerRegistry config) { config.setApplicationDestinationPrefixes("/app"); config.enableSimpleBroker("/topic", "/queue"); } }
18.
@Controller public class MessageController
{ @MessageMapping("/app") @SendTo("/topic/test") public CommentView send(String message) { return message } }
19.
Scaling BrokerRelay로 전환 현재 접속
사용자 및 구독 상태 기록
20.
21.
RabbitMQ 브로커로 사용 STOMP 플러그인
지원 MultiServerUserRegistry
22.
@Autowired SimpUserRegistry userRegistry; final String
dest = stompHeaderAccessor.getDestination(); userRegistry.findSubscriptions(s -> s.getDestination().equals(dest)).size();
23.
Security Spring Security 필터 Handshake
과정에서 HTTP 요청에 적용
24.
끝
Download now