Skip to content
 
 

Repository files navigation

Wesell

프로젝트명 : Wesell

프로젝트 소개

중고 거래를 위한 웹 애플리케이션입니다. MSA를 경험해보기 위해 각 서비스를 서버로 나누었고, 배포까지 진행해보았습니다.

프로젝트 목표

이 프로젝트에서 MSA 서비스를 도입하여 각 서버마다의 원활한 통신이 가능하도록 했습니다. 이외에도 협업에 중요한 방식 중 애자일 방식, 코드 컨벤션, 디자인 패턴 등을 익히는 것을 목표로 삼았습니다.

프로젝트 설명

각 서비스의 역할에 따라 최소한의 여러 서버로 나누었습니다.

admin-service

  • 유저들, 게시글의 데이터를 다른 서버와의 통신을 이용하여 관리하는 관리자용 서버입니다.
  • 사용자와 글의 데이터들을 얻어오거나, 권한 수정, 강제 탈퇴 및 삭제처리, 검색이 이루어집니다.

apigateway-server

  • 글로벌 필터를 활용하여 서로 다른 통신망이나 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 게이트웨이 서버입니다.

authentication-server

  • 프로젝트 전반의 보안을 담당하는 보안 서버입니다.
  • 리프레시 토큰, 엑세스 토큰, 로그인/로그아웃, 회원가입/회원탈퇴, 카카오api를 이용한 카카오 로그인까지 이루어집니다.

config-server

  • jasypt를 활용하여 회원 비밀번호를 암호화, 복호화 하는 서버입니다.
  • Spring Cloud Config Server를 활용하여 애플리케이션의 설정 정보는 외부 Git에서 관리가 이루어집니다.

deal-service

  • 게시글의 데이터를 중점적으로 다루는 게시글 서버입니다
  • 게시글의 업로드, 수정, 게시글 상태 변경, 본인의 게시글 조회, 게시글/게시글 카테고리 검색이 이루어집니다.

discovery-server

  • 각 서버의 health-check를 위해 netflix eureka를 이용한 서버입니다.
  • 로드밸런싱을 활용하여 각 서버를 구분, 정상적으로 작동중인지 확인할 수 있습니다.

front-server

  • 프로젝트 전반의 react 웹 페이지를 작성한 프론트 서버입니다.
  • typescript를 이용하여 작성하였고, proxy 미들웨어로 각 페이지가 올바르게 출력되도록 이루어집니다.
  • 간단한 eslint, prettier도 작성해보았습니다.

image-server

  • 서버 전반의 이미지를 관리하는 서버입니다
  • 클라우드 스토리지에 이미지를 업로드하고, 다운로드가 이루어집니다.

user-service

  • 유저가 관리할 수 있는 유저 정보를 다루는 유저 서버입니다.
  • 마이페이지, 닉네임 중복 확인이 이루어집니다.

사용한 협업 툴

  • Figma
  • ERD Cloud
  • Github
  • JIRA Software

About

[팀 프로젝트] MSA 기반 중고거래 사이트

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages