Blog

[NestJS] 11. 심화 목표 키워드

Category
Author
citeFred
citeFred
PinOnMain
1 more property
NestJS, TypeORM 이해하기
Table of Content

1. 파일 업로딩과 스트리밍

1.1 뷰 템플릿 엔진

목표: NestJS에서 뷰 템플릿 엔진을 사용하여 서버 사이드 렌더링(SSR) 구현
서버 측에서 HTML 템플릿을 렌더링하여 클라이언트에 동적인 콘텐츠를 제공

1.2 파일 업로드

목표: 파일을 서버로 업로드하고 관리하는 기능 구현
사용자 파일 업로드, 프로필 사진 등 다양한 파일을 서버에 저장

1.3 파일 스트리밍

목표: 서버에서 클라이언트로 대용량 파일을 스트리밍하는 기능 구현
비디오 스트리밍, 대용량 데이터 다운로드 등 사용자에게 실시간으로 콘텐츠를 제공

2. 외부 API 사용 (카카오 API 로그인, 다음 지도 API)

목표: 외부 서비스와의 통합을 통해 기능 확장.
카카오 로그인: OAuth 인증을 통해 사용자 로그인을 처리.
다음 지도 API: 지도 정보를 제공하여 위치 기반 서비스 제공.

3. 클라우딩 배포와 HTTPS (AWS EC2, S3, RDS, ACM-Route53-LoadBalancer)

목표: 클라우드 환경에 배포하고 HTTPS를 설정하여 보안을 강화.
AWS EC2: 클라우드 서버 실행.
S3: 파일 저장 및 관리.
RDS: 데이터베이스 클라우드 관리.
ACM-Route53-LoadBalancer: HTTPS 설정과 로드 밸런싱.

4. N+1 문제 트러블 슈팅

목표: 데이터베이스 쿼리에서 발생할 수 있는 N+1 문제 해결, 데이터베이스 쿼리 성능 최적화.
데이터베이스 쿼리 성능을 개선하여 애플리케이션 응답 속도 향상.

5. 테스트코드와 커버리지

목표: 코드의 신뢰성을 높이기 위한 테스트 코드 작성 및 테스트 커버리지 측정
테스트는 코드의 버그를 줄이고, 안정성을 높이는 목적.
CI/CD와 연동하여 자동화를 위한 준비

6. DevOps CI/CD 파이프라인의 Github Actions

목표: 자동화된 배포 및 통합 파이프라인 구축
코드 변경 시 자동으로 빌드, 테스트, 배포 처리
개발 및 배포 프로세스를 자동화하여 효율성 향상.

7. Refresh Token과 Redis 기술

목표: Refresh Token을 사용한 인증 및 Redis를 이용한 세션 관리 최적화
사용자의 세션을 관리하고, JWT 인증을 강화

8. GraphQL을 통한 API 구현

목표: GraphQL의 기본 개념과 원리를 이해하고, 이를 사용하여 효율적인 데이터 쿼리 및 조작을 구현
데이터 쿼리 최적화: GraphQL의 쿼리 최적화 기법을 통해 데이터 요청을 최적화하고, N+1 문제를 해결
스키마 설계: GraphQL 스키마를 설계하여 데이터 모델을 정의하고, 쿼리와 뮤테이션을 관리
서버 및 클라이언트 통합: GraphQL 서버를 구축하고, 클라이언트 애플리케이션에서 GraphQL을 사용하여 데이터를 요청하고 처리
성능 및 보안 고려사항: GraphQL의 성능 최적화 및 보안 고려사항 적용

9. Query 최적화, 인덱싱과 ElasticSearch(ELK) 기술

목표: 데이터베이스 쿼리 성능 최적화 및 검색 기능 향상
쿼리 성능을 최적화하고, ElasticSearch를 통해 복잡한 검색 쿼리를 처리
데이터 처리 성능을 향상시키고, 사용자 검색 경험을 개선

10. MSA 구축을 위한 Kafka 기술

목표: 마이크로서비스 아키텍처에서 이벤트 스트리밍 및 메시징 처리
서비스 간의 비동기 통신 및 데이터 스트리밍을 지원
대규모 시스템에서 서비스 간의 효율적인 데이터 전달 및 확장성을 지원

11. 이후 심화 주제

대용량 멀티미디어 데이터 처리(Encoding, Streaming)
대규모 트래픽 처리(High Traffic Handling)
대규모 데이터 처리(Big Data Processing)
Search
 | Main Page | Category |  Tags | About Me | Contact | Portfolio