
이번에는 MSA(Micro-Service Architecture)를 구성하는데 있어 하나의 서비스에 해당하는 채팅기능을 개발해봅니다. 가용성을 위해 서버를 여러대로 확장하는 Scale-Out 을 하고 다양한 기술들을 활용해 볼텐데 사용될 기술의 사용 목적을 간단히 설명하고 시작하겠습니다. 구독/발행 기반의 STOMP 채팅 MessageBroker로 Kafka 채팅내역을 저장하기 위한 MongoDB 여러대의 서버관리, 트래픽 분산처리와 장애복구를 위한 Kubernetes Kafka와 MongoDB는 kubernetes 내부가 아닌 외부IP 에서 사용한다고 가정합니다. 대략적인 구조 데이터 처리 과정 사용자가 Stomp 커넥션을 요청 Kubernetes LoadBalancing으로 여러대의 서버중 하나와 연..

이전 포스트 2023.07.25 - [Spring/채팅앱] - [Spring 채팅앱 성능 개선기 5] Spring Cloud LoadBalancing 적용 [Spring 채팅앱 성능 개선기 5] Spring Cloud LoadBalancing 적용 이전게시글 2023.07.13 - [Spring/채팅앱] - [Spring 채팅앱 성능 개선기 4] Redis Cache 적용 [Spring 채팅앱 성능 개선기 4] Redis Cache 적용 이전 게시글 2023.07.06 - [Spring/채팅앱] - [Spring 채팅앱 성능 개선기 3] Cac wans1027.tistory.com 로드밸런싱을 적용하면서 문제가 생겼습니다. 현재는 발행(pub)과 구독(sub)의 서버 포트가 같아야만 통신이 가능합니다. ..
- Total
- Today
- Yesterday
- authorization
- Spring 대댓글
- Stomp Kafka
- FCM
- 게시판 채팅
- Authentication
- Vmmem종료
- bcrypt
- ERD설계
- Spring RabbitMQ
- Security
- Bcypt
- Flutter
- Spring
- 웹소켓 채팅
- Kubernetes
- ChattingApp
- 로컬캐시
- 푸시알림동작원리
- Cache
- loadbalancing
- Spring 채팅
- spring orphan
- Spring WebSocket
- Spring Stomp
- Vmmem
- nativeQuery
- MessageBroker
- Stomp RabbitMQ
- springboot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |