전체 글159 [SSE, Redis Pub/Sub, RDB] 확장성 있는 알림 기능 구현[SSE, Redis Pub/Sub, RDB] 확장성 있는 알림 기능 구현 0. 확장성이란 무엇인가?확장성(Scalability)이란 소프트웨어가 증가하는 부하나 수요를 처리할 수 있는 능력을 의미한다. 즉, 사용자가 늘어나거나, 데이터가 증가하거나, 새로운 기능이 추가되더라도 시스템이 성능 저하 없이 원활하게 작동할 수 있는지를 나타내는 개념이다.확장성이라고 하면 수평적 확장 혹은 수직적 확장 등 주로 DB나 서버 인스턴스에서 많이 들어봤을 개념이다.1. 알림 기능에서 내가 정의한 확장성다음과 같은 상황에서 코드 수정이 필요없거나 최소화 하도록 하자.다중서버로 확장사용자 A가 a 서버와 연결되어 있지만, b 서버에서 A 사용자와 관련된 이벤트가 발생했을 때 알림이 잘 전송되어야 한다.다양한 형태의 알림 기능 증가매도, 매수, 서버 공지, 이벤트 당첨 등 다양한 알림 형태에 대.. 2025. 1. 15. [NCP] NCP는 AWS의 대항마가 될 수 있을까? 후기 작성 가이드0. 개요네이버 부스트캠프 웹풀스택 과정 9기를 수료하면서 최종 프로젝트를 진행했다.이때 네이버답게 AWS가 아닌 네이버의 클라우드 플랫폼인 NCP(Naver Cloud Platform)을 기반으로 진행했다.주어진 크레딧은 30만원으로, 추후 일정 조건에 따라 70만원을 추가로 최대 100만원 까지 크레딧을 얻을 수 있었다.1. 진행한 프로젝트증권사 API를 활용하는 것이 아닌 사용자간의 매매 거래가 체결되어 시장을 형성하도록 개발하였다.추가적으로 알림 기능, 복권, 랭킹 등의 요소를 넣어서 게임적인 완성도를 높이고자 했었다.프로젝트 링크 : https://github.com/boostcampwm-2024/web13-YeokjeonNongbu2. Ncloud에서 사용한 서비스Server .. 2024. 12. 18. [Polling] 폴링과 롱 폴링 (feat. SSE와 Socket) 0. 개요폴링은 주기적으로 서버에 요청해서 데이터가 있는지 혹은 변했는지 체크하는 방식이다.근데 poll은 "투표"라는 뜻을 가지고 있는데 왜 polling은 SW에서 투표와 무관해 보이는 뜻을 가지게 된 것일까?GTP와 Copilot에 의하면 정확한 기원은 기록이 없지만, 반복적인 확인(정기적으로 사람들에게 질문하여 의견을 확인)하거나 투표에서 일정 시간 동안 개표를 진행하는 주기적인 활동에서 비롯된것 같다고 한다.폴링은 특수한 연결 유지가 없다. 그래서 클라이언트에서 지속적으로 요청을 보내서 확인하는 방식이다.술만 마시면 전 애인에게 카톡을 남기는 누군가와 비슷하다. 물론 응답이 올 수도 안올 수도 있고, 응답이 와도 원하지 않았던 응답일 수 도 있다. 주기적으로 요청하는 것 까지 비슷하다.1. 폴링.. 2024. 11. 28. [Redis] Redis Pub/Sub 0. 요약아래 코드를 통해 아주 간단히 Redis를 이용한 Publisher, subsciber를 이용한 방법을 알 수 있다.세부적인 방법은 코드 다음 글을 참고하자.import { createClient, RedisClientType } from 'redis';import { ConfigService } from '@nestjs/config';@Injectable()export class MailService implements OnModuleInit, OnModuleDestroy { private subscriber: RedisClientType; private publisher: RedisClientType; private sseSubjects: Map> = new Map(); private.. 2024. 11. 27. 이전 1 2 3 4 5 6 ··· 40 다음