프로젝트 배경
1. 문제점 다수의 IoT 디바이스에 날씨, 대기질, 뉴스 같은 생활 정보를 제공하는 환경에서, 기존 REST 폴링 방식만으로는 한계가 분명했습니다. 디바이스가 주기적으로 서버에 요청을 보내는 구조는 정보가 실제로 갱신됐는지와 무관하게 불필요한 트래픽을 발생시키고, 디바이스 수가 늘수록 서버 부하가 선형적으로 증가합니다. 또한 어떤 디바이스가 지금 연결되어 있고 어떤 디바이스가 끊겼는지
프로젝트 성과
디바이스당 통신 트래픽 절감
REST 폴링을 MQTT pub/sub로 전환해 갱신된 정보만 push, 불필요한 주기 요청을 제거하고 다수
디바이스 환경의 서버 부하를 크게 낮췄습니다.
디바이스 환경의 서버 부하를 크게 낮췄습니다.
실시간 디바이스 상태 가시성 확보
LWT 기반 연결·해제 감지로 비정상 종료까지 포착, 관리자 대시보드에서 전 디바이스의 온라인
상태를 지연 없이 실시간 확인할 수 있게 했습니다.
상태를 지연 없이 실시간 확인할 수 있게 했습니다.
다층 인증 체계로 무단 접근 차단
JWT·API Key·go-auth와 토픽 단위 ACL을 적용해 허가된 디바이스만 지정 토픽에 접근하도록
통제, 인증되지 않은 접근을 원천 차단했습니다.
통제, 인증되지 않은 접근을 원천 차단했습니다.
핵심 기능
진행 단계
요구사항 분석 및 아키텍처 설계
2025.01.
실시간 메시징 요구사항을 정리하고 MQTT를 중심으로 한 시스템 구조를 설계했습니다. 토픽
체계, 데이터 흐름, 인증 방식, 모듈 구성을 확정했습니다.
체계, 데이터 흐름, 인증 방식, 모듈 구성을 확정했습니다.
프로젝트 상세
1. 포트폴리오 소개 MQTT 프로토콜 기반의 실시간 IoT 메시징 플랫폼입니다. 날씨, 대기질, 뉴스 등 생활밀착형 환경 정보를 IoT 디바이스로 실시간 전송하고, 관리자는 연결된 디바이스와 메시지 흐름을 한 화면에서 모니터링합니다. 메인 타깃은 환경 정보 디스플레이 디바이스 사용자와 이를 운영·관리하는 서비스 관리자입니다. 2. 작업 범위 백엔드 서버 구축(Kotlin/S







