f-lab-edu / auctionhub Goto Github PK
View Code? Open in Web Editor NEW시작가 천원! 누구나 참여할 수 있는 경매 어플리케이션.
시작가 천원! 누구나 참여할 수 있는 경매 어플리케이션.
dbdiagram.io 사용
ERD 검토 후 반영
DB에 순간적으로 많은 읽기와 수정이 발생할 수 있는데 캐시를 두어 빠르게 사용자 요청을 처리하기 위해 캐싱으로 Redis를 사용한다.
Redis를 이용한 캐싱 적용
네이버 클라우드를 이용하고 프로젝트 CI/CD는 젠킨스를 이용한다.
카테고리 도메인을 개발한다.
Jenkins CI Test 이슈입니다.
PR이 발생하면 Jenkinsfile에 작성된 Shell script가 정상 실행 되는지 체크
회원 가입 기능을 개발한다.
Auditing을 이용한 공통컬럼을 BaseEntity로 설정한다.
카테고리, 상품, 입찰 등 불필요한 코드를 리팩토링한다.
상품 도메인을 개발한다.
WAS 서버 추가시 발생할 세션 불일치 문제를 개선하고 한다.
회원 도메인에서 컨트롤러와 서비스 DTO를 분리한다.
상품을 보는 사용자가 뷰에서 경매로 인해 증가된 입찰 가격이 실시간으로 표시 되어야 한다.
이전 입찰 가격을 보고 입찰을 하였는데 이미 높은 가격으로 요청이 된 경우가 있을 수 있다.
WebSocket과 Redis를 이용한 실시간 입찰 정보 업데이트 기능 구현
프로젝트 초기 세팅.
Hello World Controller 만들기.
정리가 되지 않은 클래스를 묶고 패키지를 변경한다.
패키지 리팩토링
입찰 도메인을 개발한다.
주문 도메인을 개발한다.
입찰 종료 시간이 되면 순간적으로 발생할 수 있는 트래픽을 처리하기 위해 별도의 메시지 큐를 사용한다.
부트는 톰캣 기반의 큐와 스레드 풀을 이용해 요청을 처리하지만 서버에 장애가 발생하면 손실될 가능성이 있다.
메시지 큐는 RabbitMQ를 이용한다.
로그인 체크와 권한 내용을 인터셉터 통해 구현한다.
로그인 체크 구현.
권한 체크 구현.
로컬 개발 환경에서는 H2 데이터베이스 사용
로컬 개발 환경 구성
네이버 클라우드 위에 젠킨스를 이용하여 CD를 구축한다.
현재 created_by 컬럼이 테이블 생성 시 유저의 PK값인 id를 갖고 있다.
이를 유저의 id가 아닌 String형태의 user_id로 변경하고자 한다.
세션을 통해서 user_id를 가져와 테이블 생성시 들어가도록 작성한다.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.