Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/f-lab-edu/electronics-used-trading-market

중고 거래 플랫폼 프로젝트
https://github.com/f-lab-edu/electronics-used-trading-market

java spring

Last synced: 5 days ago
JSON representation

중고 거래 플랫폼 프로젝트

Awesome Lists containing this project

README

        

# 🎁 electronics-used-trading-market

## 🚀 프로젝트 개요
중고나라/번개장터/당근마켓 같은 중고 거래 플랫폼을 모티브로 하였습니다.


다양한 중고 제품 중에 중고 전자제품을 전문적으로 거래할 수 있는 중고 거래 플랫폼입니다.

## 🖥 프로젝트 주안점
- 대규모 데이터를 빠르고 정확하게 검색할 수 있는 방법을 모색했습니다.
- 서비스의 규모가 커지고 트래픽이 증가할 때 서버를 어떻게 분산하고 관리할 수 있는지 고민하며 개발했습니다.
- 일회성 채팅이라는 특성을 고려하여 코드, 인프라, 정책 등 다양한 측면에서 최적화된 방법을 찾아보았습니다.
- 타입이 추가될 때마다 if문이 늘어나는 문제를 객체지향적으로 해결할 수 있는 방법을 탐구하였습니다.
- 다량의 요청 상황에서 병목현상을 찾아보고 원인을 찾아 해결해보는 경험을 하기 위해서 부하 테스트를 진행하고 프로파일러를 통해서 내부의 자원 상황을 모니터링해보았습니다.
- Jenkins를 이용해서 CI/CD 환경을 구축해 보았습니다.
- Redis를 클러스터링하여 장애시 페일오버를 자동으로 할 수 있도록 구성했습니다.
- 실제 제품들의 API를 조사하여 서비스 제공 방식을 파악하고, 제가 개발한 API와의 차별점을 비교/분석하였습니다.

## 📝 사용 기술
- Spring Boot
- Java 17
- Gradle
- Mybatis
- MYSQL
- Redis
- Jenkins
- Nginx
- Naver Cloud Platform
- Docker
- ELK

## ☁️ Architecture
![image](https://user-images.githubusercontent.com/39224132/227718346-a892ea2d-c9fd-4e01-ac59-19bb0532f56f.png)

## 📝 WIKI
- [UseCase](https://github.com/f-lab-edu/electronics-used-trading-market/wiki/1.UseCase)
- [Prototype](https://github.com/f-lab-edu/electronics-used-trading-market/wiki/2.Prototype)
- [API Specification](https://github.com/f-lab-edu/electronics-used-trading-market/wiki/3.API-Specification)
- [ERD](https://github.com/f-lab-edu/electronics-used-trading-market/wiki/4.ERD)
- [Architecture](https://github.com/f-lab-edu/electronics-used-trading-market/wiki/5.Architecture)
- [ISSUE](https://github.com/f-lab-edu/electronics-used-trading-market/wiki/6.ISSUE)