/////
Search
Duplicate

고스락 티켓 예매 프로젝트 1차

기간
2022.01. ~ 2022.03
기술스택
Node.js
Express.js
MongoDB
Github Actions
Docker
한 줄 소개
홍익대 컴공 밴드학회 고스락 2022년 3월 정기공연 티켓 예매 페이지
Role
Backend Server Engineer
Links
Github -
Figma - Link

서비스 내용

1.
온라인 티켓 예매 서비스
2.
QR코드와 소켓을 통한 실시간 입장 서비스
3.
어드민 페이지로 예매 현황 및 티켓 상태 관리

기술 스택

Nodejs (Express)
MongoDB

아키텍쳐

Github Actions + Dockerfile 빌드를 통한 도커 이미지 푸시
AWS EC2 에서 nginx + docker-compose 를 통해 서브도메인까지 통합 배포

개발 내용

JWT를 통한 문자인증 구현

문자를 통한 사용자 인증을 구현하기 위해 JWT를 이용하여 사용자의 휴대폰 번호와 인증번호, 비밀키를 감싼 메세지 토큰을 보냅니다.
메세지 토큰 유효 시간은 3분입니다.
이 기간 내에 사용자가 인증번호를 입력하면 메세지 토큰과 인증번호를 담은 body를 함께 서버에 보내게 됩니다.
서버에서 토큰을 검증하고 인증번호와 일치하는 지 확인 후 엑세스 토큰을 생성하여 응답합니다

성장 경험

컨벤션

이슈와 PR, commit 메세지에 대한 컨벤션을 새로 경험해보고 깊게 생각해보는 시간이었습니다. 협업 과정에서 팀원들의 코드 수정 내역을 이전 코드와 비교하고 일일히 확인하는 것은 생각보다 어렵고 시간이 오래 걸리는 일입니다. 따라서 변경 사항을 쉽게 확인하기 위해 컨벤션을 지키는 것은 아주 중요합니다. 프로젝트는 소통이 가장 중요하는 점, 그리고 그것을 위한 컨벤션 유지라는 핵심 키워드가 이번 프로젝트에서 가장 크게 얻어갔던 점 같습니다.

검증 및 예외처리

클라이언트가 서버로 입력하는 여러 경우의 수를 생각해서 이를 검증하고, 예외 처리하는 것이 생각보다 까다로웠습니다. 잘못된 입력을 서버에서 그대로 받아들이거나 예외를 올바르게 통제하지 못했을 때, 서버가 꺼지는 일이 많기 때문입니다. 따라서 이러한 부분을 더욱 신경써서 사용자 입력에 대한 예외를 잡아내고자 더욱 노력했습니다.

성과

2022년 3월 정기 공연 103명 예약 (코로나19로 인한 최대 입장 가능 인원)
신입생 54명 면접 지원 (웹페이지를 통한 홍보, 예매 시 선배와의 소모임 신청)

 서비스 화면

기획 / 디자인

Figma (Embedded)