Git Product home page Git Product logo

trade-platform's Introduction

프로젝트 목표

  • 중고거래를 할 수 있는 플랫폼 개발

프로젝트 기능

  • 사용자는 로그인 이후 중고거래 플랫폼을 이용가능.
  • 중고거래 플랫폼을 이용하는 사용자는 상품을 등록,조회,수정,삭제 기능 가능
  • 중고거래 플랫폼을 이용하는 사용자는 관심있는 중고상품을 올린 사용자에게 직접 DM 메세지를 이용해 채팅 가능
  • 대용량의 사용자 동시 접속 및 플랫폼 이용 가능

프로젝트 중점상황

  • 로그인 서비스
  • Redis를 활용한 로그인 서비스
  • 중고거래 상품의 등록 및 조회 구현 (인메모리 방식)
  • 중고거래 상품의 등록 및 조회 구현 (데이터베이스 연동)
  • 데이터베이스 설계
  • 풀링 방식을 활용한 채팅 DM 구현
  • 다중 사용자가 이용가능한 서비스 구현
  • 분산처리 환경에서 동작할 수 있도록 설계
  • 다수의 노드를 사용하여 대규모 트래픽 처리
  • 가상화 기술을 사용한 손쉬운 배포 및 확장

프로젝트 구성도

추후 업데이트

프로젝트 진행단계

기술 스택

  • Spring boot 2.6.2
  • Java 11
  • gradle

브랜치 관리 전략

Github flow 를 사용하여 브랜치 관리

  • main branch
    • 항상 최신이며 언제든 배포가 가능한 상태로 유지.
  • new (feature) branch
    • 새로운 기능 및 버그 수정등은 main branch 부터 새로운 브랜치 생성 후 작업.
    • 브랜치의 이름을 의도가 드러나게 명확히 작성 필요.
  • merge 전략
    • PR을 통해 다른 사용자에게 반드시 리뷰를 받은 후 main 브랜치에 merge 진행.

코드 스타일

Checkstyle 9.0 버전 적용

  • google_checks.xml 사용
  • Lint 적용을 통해 커밋 전 자동 코드 스타일 검사
  • Lint 적용을 위해 아래 명령어 입력 (레포지토리 클론 후)
    • git config core.hooksPath .githooks (git version 2.9 이상)

테스트

  • JUnit5를 사용하여 단위 테스트 수행
  • 기타 등등..

성능 테스트

  • 기타 등등..

trade-platform's People

Contributors

dltmdcjf avatar dongwoonkim avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

trade-platform's Issues

Gradle 빌드 에러

gradle로 build 실행시 아래와 같은 에러 발생

`7:21:04 PM: Executing 'buildDependents'...

Task :trade-common:compileJava NO-SOURCE
Task :trade-common:processResources NO-SOURCE
Task :trade-common:classes UP-TO-DATE
Task :trade-common:jar
Task :trade-chat:compileJava NO-SOURCE
Task :trade-chat:processResources
Task :trade-chat:classes
Task :trade-chat:bootJarMainClassName
Task :trade-chat:bootJar FAILED
4 actionable tasks: 4 executed

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':trade-chat:bootJar'.

Error while evaluating property 'mainClass' of task ':trade-chat:bootJar'
Failed to calculate the value of task ':trade-chat:bootJar' property 'mainClass'.
> Main class name has not been configured and it could not be resolved

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 448ms
7:21:05 PM: Execution finished 'buildDependents'.`

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.