Skip to content

리그 오브 레전드(LoL)과 관련된 종합 커뮤니트 사이트입니다.

Notifications You must be signed in to change notification settings

deveLOLment/LegendsOfLeague

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 

Repository files navigation

🎮 LegendsOfLeague

image

프로젝트 링크

API 스웨거 링크: https://15.164.169.174.nip.io/swagger-ui/index.html#/
배포 사이트: https://develolment.site/

서비스 설명

Legends of League 프로젝트는 리그 오브 레전드(LoL)과 관련된 종합 커뮤니트 사이트입니다. 이 프로젝트는 LoL 시즌 게임의 요약 결과를 제공하고, 게임에 참가한 프로게이머(플레이어)들에 대한 투표 기능을 포함하고 있습니다. 또한, LoL과 관련된 상품을 구매할 수 있는 쇼핑몰과, 간단한 채팅 기능도 지원합니다.

주요 기능

  • 📊 시즌 게임 결과 요약: 시즌별 게임 결과를 신속하게 요약해서 보여줍니다.
  • 플레이어 투표 시스템: 게임에 참가한 플레이어들의 성과에 대해 커뮤니티 투표를 진행합니다.
  • 🛒 LoL 관련 상품 쇼핑몰 운영: LoL 캐릭터 상품, 아이템 등 다양한 상품을 판매합니다.
  • 🗨 간단한 채팅 기능 제공: 사이트 사용자들이 실시간으로 의견을 교환할 수 있는 채팅방을 제공합니다.

⚙️ 기술 스택

  • Backend: Java 17, Spring Boot 3.2.1, Spring Data JPA, Spring Security 6.2.1, QueryDsl 5, WebSocket, STOMP, Python
  • Frontend: React, TypeScript, BootStrap
  • DB: MySql, Redis
  • Server: AWS EC2, AWS S3, AWS RDS, AWS CloudFront, AWS Route 53
  • Tools: IntelliJ, VSCode, PyCharm
  • Collaborations: Git, GitHub Projects, Discord, Notion

🤝 협업 전략

브랜치 전략

  • GitHub flow 전략을 사용한다.
    • main (배포서버): 배포시 사용합니다.
    • develop (개발서버): 완전히 개발이 끝난 부분에 대해서만 Merge를 진행합니다.

🗓️ 개발 기간

2024-02-05 ~ 2024-03-12

🛠 기술적 issue 해결 과정

김재현: 쇼핑몰 / 프로젝트 배포

효율적인 주문 관리: 스케줄링으로 무한 쌓임 탈출하기

주문 목록 조회 N 플러스 1 문제 해결: QueryDsl, fetch join 활용

염금성: 인증 / 인가

로그인한 사용자 정보 참조를 간소화: 커스텀 어노테이션을 통해

우성범: 평점

외부 API를 활용한 데이터베이스 구축: 팀, 선수, 게임 정보 저장 과정

이비안: 채팅

실시간 채팅 기능 구현하기: WebSocket과 STOMP를 통해

Spring Security와 WebSocket의 JWT 토큰 인증 문제 해결

임현우: 주문 / 결제

상품구매 시 재고 관리 로직 ‐ MySQL Named Lock으로 동시성 문제 해결

수량제한이 있는 선착순 쿠폰 발급 로직 ‐ Redis로 동시성 문제 해결

중복 인스턴스 생성 방지: 싱글톤 예외 관리 전략

💾 ERD

2024-03-12_164810

🖼️ 주요 화면

게임 투표 화면

image image

회원가입 및 로그인 화면

image image

채팅

image

장바구니

image

상품 페이지

image image

결제

image image

쿠폰

image

👨‍💻 팀원 소개

김재현 염금성 우성범 이비안 임현우
@JaeniorDeveloper @venus01 @sbwoo96a @gumgu @hyunwoo0318
같이 일하고 싶은 개발자가 되자 도전과 성장을 통해 발전하는 개발자 어쩌다 보니 백엔드 개발자 부족해도 꾸준하게! 항상 꼼꼼하고 행복하게 코딩하자~

About

리그 오브 레전드(LoL)과 관련된 종합 커뮤니트 사이트입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5