채팅 통신 방식 폴링 WebSocket WebSocket 데이터 전송 방법에 대한 정의 sec-WebSocket-Protocol 정의 필요 데이터 형식 , 구조에 대한 정의 필요 표준 메세지 프로토콜 AMQP STOMP MQTT JMS 구현체 RabbitMQ OpenAMQ StormMQ Apache Qpid Reperence url: https://velog.io/@sunkyuj/Spring-%EC%9B%B9%EC%86%8C%EC%BC%93%EC%9C%BC%EB%A1%9C-%EC%8B%A4%EC%8B%9C%EA%B0%84-%EC%B1%84%ED%8C%85-%EA%B5%AC%ED%98%84 title: "[Spring] 웹소켓으로 실시간 채팅 구현" description: "현재 만들고 있는 토이 프로젝트에서 채팅 기능을 구현하고자 하였다.채팅 기능을 구현하기 위해서는 웹소켓에 대해서 알아야 했다.웹소켓이란?처음에 채팅 기능을 구현할 때 HTTP를 이용해서 구현하려고 했다.하지만 HTTP는 요청과 응답이라는 구조로 통신이 이" host: velog.io favicon: https://static.velog.io/favicons/favicon-32x32.png image: https://velog.velcdn.com/images/sunkyuj/post/31487f23-6f0a-4c61-bf72-99085a813452/image.png url: https://velog.io/@gkdud583/%EC%B1%84%ED%8C%85-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98-%EC%84%A4%EA%B3%84%ED%95%98%EA%B8%B0 title: "채팅 아키텍처 설계하기 v1" description: "이번에 진행하는 프로젝트에서 채팅, 신고 도메인을 맡았고 캠프장님께 아키텍처 리뷰를 받기전에 간략하게 설계한 아키텍처를 기록한다. 신고" host: velog.io favicon: https://static.velog.io/favicons/favicon-32x32.png image: https://images.velog.io/velog.png url: https://velog.io/@holicme7/%ED%91%9C%EC%A4%80-%EB%A9%94%EC%84%B8%EC%A7%95-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C-%EC%A0%95%EB%A6%AC-AMQP-STOMP-MQTT title: "표준 메세징 프로토콜 정리 (AMQP, STOMP, MQTT)" description: "AMQP는 메세지 지향 미들웨어 (MOM) 을 위한 표준 응용 계층 프로토콜입니다. 간단히 말하면, 메세지 통신을 위한 규약 스펙 입니다.플랫폼 종속적인 제품들 사이에서 서로 다른 이기종간에 메세지를 교환하기 위해서는 메세지 포맷 변환을 위해 속도가 느린 메세지 Bri" host: velog.io favicon: https://static.velog.io/favicons/favicon-32x32.png image: https://velog.velcdn.com/images/holicme7/post/129dddac-1eab-4f60-91de-6913ba3b0402/image.png url: https://jaeseo0519.tistory.com/411 title: "[Network] WebSocket & Sub Protocol (feat. STOMP)" description: "📕 목차1. Web Socket2. Sub Protocol3. STOMP(Simple Text Oriented Messaging Protocol)1. Web Socket [대규모 시스템 설계] 12장. 채팅 시스템 설계📕 목차1. 채팅 시스템2. 프로토콜3. 개략적 설계안4. 데이터 모델5. 상세 설계6. 개인적인 추가 고민1. 채팅 시스템 📌 과거와 현재 채팅 시스템 차이💡 책에 나온 내용은 아니고, 예전에 어딘jaeseo0519.tistory.com여기서 이어지는 내용.채팅 시스템 구현하다가, 우선 Web Socket 프로토콜에 대해서 명확하게 짚고 넘어가는 것이 좋다고 생각해서 작성. RFC 6455: The WebSocket ProtocolThe WebSocket Protocol en.." host: jaeseo0519.tistory.com favicon: https://t1.daumcdn.net/tistory_admin/favicon/tistory_favicon_32x32.ico image: https://img1.daumcdn.net/thumb/R800x0/?scode=mtistory2&fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fstatic%2Fimages%2FopenGraph%2Fopengraph.png url: https://gngsn.tistory.com/99 title: "HTTP/2, 제대로 이해하기" description: "HTTP? HTTP는 인터넷을 사용해봤다면 누구나 한 번쯤 들어 봤을텐데요. HyperText Transfer Protocol의 약자로, HyperText(링크를 통해 다른 문서로 연결될 수 있는 문서)를 Transfer(전송하는) Protocol(규격이 정해진 규칙 체계)입니다. 다르게 표현하자면, 웹에서 클라이언트(브라우저)가 웹 서버(httpd, nginx, apache 등)정보를 주고받을 수 있는 프로토콜입니다. 주로 글 위주로 이미지가 포함된 예전의 웹 페이지와는 달리, 이미지의 용량은 매우 커졌고 동영상의 수요와 공급이 급격히 증가하면서 기존의 통신 프로토콜을 변경해야할 필요성을 느끼게 됩니다. 변경 내역을 확인해보면서, HTTP3까지 어떤 것이 변경되고 왜 그렇게 변경되었는지 확인해보는 것이.." host: gngsn.tistory.com favicon: https://t1.daumcdn.net/tistory_admin/favicon/tistory_favicon_32x32.ico image: https://img1.daumcdn.net/thumb/R800x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkI2hX%2FbtrkHKJ7naT%2FQUIxclKjuuiVKoUhHGuZM0%2Fimg.png url: https://binux.tistory.com/74 title: "Message Broker - 왜 사용하는 것일까 ?" description: "RabbitMQ, Kafka를 들어보기도 하고, 사내에서 사용하기도 하다보니 찾아보며 공부하는 것이 좋겠다 싶어 이렇게 정리하게 되었습니다. 뭐, 대충 어떠한 역할을 하는지는 알고 있었지만, 제일 중요한 \"왜 필요한지?\"에 대해서는 확실히 대답하지 못하는 것 같아 찾아보며 공부해보고자 합니다. RabbitMQ, Kafka 등 이러한 메세징 SW들을 찾다보니 이들을 이루는 구조, 이론 등이 있었고, 이를 먼저 정리해보고자 합니다. 3가지 단어가 자주 등장을 하는데요, 이걸 먼저 조금씩 알고 넘어갑시다. MOM (Message Oriented Middleware): 메시지 미들웨어의 이론, 개념, 설계도를 의미 Message Queue: 메시지 큐에 대해선 어떻게 보냐에 따라 의견이 나뉘는 것 같습니다. 단.." host: binux.tistory.com image: https://img1.daumcdn.net/thumb/R800x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcjnBlj%2Fbtrax79a8Bn%2F7Y6xDJoEIpkXDvgVMEmwo1%2Fimg.jpg url: https://infinitecode.tistory.com/59?category=1210426 title: "[채팅 서버] STOMP, Message Broker" description: "이번에 진행하는 프로젝트에서 채팅 서버 관련 개발을 담당하게 되어 학습한 내용을 정리한 포스팅입니다. 채팅 서버 관련 레퍼런스를 참조하며 클론코딩을 진행해보는 과정에서 아래와 같은 문제점을 발견했습니다. 단순 WebSocket만을 통해 채팅 서버를 구현하게 될 경우 해당 메시지가 어떤 요청인지 어떻게 처리해야 하는지에 따라 채팅룸과 세션을 일일이 구현해야함 메시지 발송을 관리하는 추가 코드 필요 이런 단점들을 STOMP 프로토콜을 활용하여 메시징을 효율적으로 처리하여 서버를 고도화할 필요가 있다고 생각했고 다음은 학습한 내용을 정리한 부분입니다. STOMP STOMP란? - Simple Text Oriented Messaging Protocol - 메시지 전송을 효율적으로 하기 위한 프로토콜 - 기본적으.." host: infinitecode.tistory.com favicon: https://t1.daumcdn.net/tistory_admin/favicon/tistory_favicon_32x32.ico image: https://img1.daumcdn.net/thumb/R800x0/?scode=mtistory2&fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fstatic%2Fimages%2FopenGraph%2Fopengraph.png