[데브노트] 웹 프로젝트

Devnote 프로젝트

남건욱 2025. 9. 10. 10:07

목차

    반응형

    1. 개발자 콘텐츠 플랫폼

    흩어져 있는 최신 개발 소식과 유튜브 영상을 한곳에서 모아볼 수 있는 개발자 콘텐츠 허브 플랫폼으로 Devnote 프로젝트를 기획했다. 단순히 링크를 모아두는 것을 넘어, AI를 통해 모든 콘텐츠를 알맞은 카테고리별로 자동 분류하고 검색 기능과 커뮤니티 기능을 통해 사용자가 원하는 정보를 쉽고 깊이 있게 탐색할 수 있도록 설계했다.

     

    2. 주요 기능

    개발자에게 유용한 정보를 제공하기 위해 다음과 같은 핵심 기능들을 구현했다.

     

    2-1. 콘텐츠 자동 수집 및 분류

    외부 뉴스 사이트의 RSS와 YouTube API를 통해 개발 관련 콘텐츠를 주기적으로 수집하고, Google Gemini AI가 콘텐츠를 분석하여 유튜브 콘텐츠는 'AI', '백엔드', '프론트엔드', '데이터베이스', '보안', '인프라', '기타' 뉴스 콘텐츠는 'AI', '보안', '해킹', 'IT/테크', '인프라', '정책', '기타' 카테고리로 자동 분류했다.

    2-2. 검색 및 필터링

    Elasticsearch 기반의 검색 엔진을 통해 제목, 본문, 필터링 등 다양한 검색 옵션을 구현했다.

    2-3. 사용자 활동 및 커뮤니티

    소셜 로그인(OAuth2)을 지원하며, 사용자는 관심 있는 콘텐츠나 채널을 찜하거나 댓글을 통해 의견을 나눌 수 있도록 구현했다.

    2-4. 통계 및 로깅 시스템

    ELK 스택을 활용해 모든 서비스의 로그를 중앙에서 관리하고, 실시간 랭킹 및 서비스 통계 대시보드를 통해 시스템 현황을 한눈에 파악할 수 있도록 구축했다.

     

    3. 사용 기술 스택

    3-1. Backend

    Java 17, Spring Boot 3, Spring Cloud, Kafka, Redis, Elasticsearch, MariaDB

    3-2. Frontend

    Next.js 15

    3-3. DevOps

    Docker, Jenkins, nginx

    3-4. Infrastructure & Tools

    Eureka Server, Spring Cloud Gateway, ELK Stack, Google Gemini AI

     

    4. 느낀점

    Devnote는 각 기술을 왜 선택했고 어떻게 유기적으로 연결했는지에 대한 고민을 담은 프로젝트다. 특히 MSA 환경에서 각 데이터의 특성에 맞는 저장소를 선택하고, Kafka를 통해 서비스를 비동기적으로 연결하는 경험은 시스템 전체의 안정성과 확장성을 깊이 이해하는 계기가 되었다.

    다음 글에서는 Devnote의 MSA 백엔드 아키텍처를 어떻게 설계하고 구축했는지에 대해 더 자세히 다뤄볼 예정이다.

    반응형
    프로필사진

    남건욱's 공부기록