[Development] 온프레미스에서 AWS로
·
Development
우아한테크코스 레벨 3 팀 프로젝트 Festabook에서 학습한 내용을 정리한 글입니다. 💭 들어가며“필요를 느낄 때 도입하자”는 우리 팀의 백엔드 가치관에 따라 팀원 집 서버에서 온프레미스로 서비스를 운영하며 최소한의 환경에서 시작했다. 이후 서버 불안정으로 인한 불편함을 느낀 시점에서 온프레미스 환경을 AWS Cloud로 이전했다. 아키텍처를 설계하면서 정말 정답은 없고, 그렇기 때문에 이유가 분명해야 한다는 것을 알게 되었다. 효율성과 비용 사이에서 균형을 찾는 것이 핵심이었기 때문이다. 이제 막 AWS 자격증을 취득하고 처음으로 직접 아키텍처를 설계해 본 경험이기에 기본적인 구성이지만, 그 과정을 정리해 보려 한다. ✅ 아키텍처▶ 아키텍처 이전 ▶ 아키텍처 이후 ✅ 아키텍처 선택 이유▶ 퍼블..
[Development] Spring Security 도입기
·
Development
우아한테크코스 레벨 3 팀 프로젝트 Festabook에서 학습한 내용을 정리한 글입니다. 💭 들어가며학생회 페이지는 자원 생성, 수정, 삭제 기능을 포함하고 있으므로 해당 리소스에 대한 인증과 인가가 필요하다. 이를 위해 학생회 API에 로그인 기능을 도입하였다. 또한 단순 JWT 사용 대신 Spring Security를 적용한 이유는 본문에 작성했다. ✅ Spring Security 구조 ▶ JWT 로그인 과정클라이언트가 JWT를 포함하여 서버에 요청을 보낸다.AuthenticationFilter가 요청을 가로채서 헤더에서 토큰을 추출하고, 토큰의 서명, 만료 시간 등을 검증한다.토큰이 유효하다면, 토큰의 subject(일반적으로 ID 또는 username)를 꺼내 UserDetailsService..
[Development] GitHub 작업 Slack 알림 커스터마이징 도입기
·
Development
우아한테크코스 레벨 3 팀 프로젝트 Festabook에서 학습한 내용을 정리한 글입니다. 💭 들어가며정말 개선하고 싶었던 GitHub 작업 알림 커스터마이징을 진행했다. 처음엔 복잡하고 오래 걸릴 거라 생각했지만, 실제로는 비교적 간단하게 알림 프로세스를 개선할 수 있었다. 이 글은 해당 과정을 기록하고, 이를 도입하고자 하는 분들에게 도움이 되고자 작성했다. ✅ 도입 배경작업 초기에는 PR 관련 알림만 모으기 위해 별도의 Slack 채널을 만들고, GitHub에서 기본으로 제공하는 간단한 설정을 사용해 알림을 받아보았다. 하지만 실제 사용 과정에서 다음과 같은 문제들이 드러났다.위 사진처럼 정보가 과도하게 많고 난잡해서 가독성이 떨어졌고, 알림을 설정한 나조차도 내용을 파악하기 어려워 실질적으로 ..
[Development] FCM 도입기
·
Development
우아한테크코스 레벨 3 팀 프로젝트 Festabook에서 학습한 내용을 정리한 글입니다. 💭 들어가며이번 프로젝트에서 FCM(Firebase Cloud Messaging)을 활용해 토픽 기반 푸시 알림 기능을 구현했다. 처음 도입해 보는 기술이었지만, 왜 많은 서비스들이 푸시 알림에 FCM을 사용하는지, 직접 도입하며 그 이유를 알 수 있었다. ✅ 도입 배경우리 서비스는 대학교 축제 관리 플랫폼으로, 주 사용자층은 학생회와 일반 학생이다. 서비스의 핵심 기능 중 하나는 학생회가 학생들에게 실시간으로 공지사항을 전달하는 푸시 알림 기능이기 때문에 이 기능은 필수적이었다. ✅ FCM이란▶ FCM이란FCM(Firebase Cloud Messaging)은 Google이 제공하는 무료 푸시 알림 플랫폼이다...
[Development] MSA 기반 Passport 인증 시스템 도입기
·
Development
Smilegate Dev Camp에서 개발한 내용을 정리한 글입니다. [깃허브] [회고]틀린 내용이나 질문, 더 나은 구조 제안 등이 있을 경우 댓글 달아주시면 감사하겠습니다. 💭 들어가며Passport를 도입하면서 가장 큰 어려움은 레퍼런스가 거의 없었다는 점이었다. 정보가 부족한 만큼, 앞으로 이 기술을 도입하려는 분들께 조금이나마 도움이 되었으면 하는 바람으로 MSA 기반 Passport 인증 시스템 도입기를 정리하고자 한다. 본격적인 내용에 앞서, 꼭 인지하고 읽어주셨으면 하는 부분이 있다. Toss 기술 블로그와 Netflix 기술 블로그에서도 언급했듯이, JWT 발급과 Passport 생성은 원래 하나의 인증 서버에서 모두 처리하는 것이 이상적인 구조다. 그러나 우리 프로젝트에서는 인증 서버..
soeun2537
'Development' 카테고리의 글 목록