Code Monkey home page Code Monkey logo

booknuts_be's Introduction

๋…์„œ ๊ธฐ๋ฐ˜ SNS, BookNuts

์•„์ดํ…œํฌ์Šคํ„ฐ_9ํ•ด์กฐ

๐Ÿฅœ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

๊ธฐ์กด์˜ ๊ฐœ๋ฐฉํ˜• SNS์—์„œ ํ™•์ฆํŽธํ–ฅ/ํ˜์˜ค/๊ฐ€์งœ๋‰ด์Šค ๋“ฑ์œผ๋กœ ์ธํ•ด ์‚ฌ๋žŒ๋“ค์˜ ๋ฐœ์–ธ์ด ์œ„์ถ•๋˜๊ณ  ์žˆ๋‹ค๋Š” ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ SNS ์ƒํƒœ๊ณ„์˜ ์–ด๋‘์šด ๋ฉด์„ ํ•ด๊ฒฐํ•˜๊ณ ์ž โ€˜์ฑ…โ€™์ด๋ผ๋Š” ๋งค๊ฐœ๋ฅผ ๊บผ๋‚ด๋“ค๊ฒŒ ๋˜์—ˆ๊ณ , ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ์ธ์˜ ๊ณ ์œ ํ•œ ๊ฐ€์น˜๋ฅผ ์ถ”๊ตฌํ•˜๋Š” SNS ์ƒํƒœ๊ณ„๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ ์ž ํ•˜์˜€์Šต๋‹ˆ๋‹ค.


ํ•ต์‹ฌ ๊ธฐ๋Šฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ๋ˆ„๊ตฌ๋‚˜ ์ž์œ ๋กญ๊ฒŒ ์˜๊ฒฌ์„ ๊ฐœ์ง„ํ•  ์ˆ˜ ์žˆ๋Š” ํ† ๋ก ์žฅ
  2. ์ž์‹ ์˜ ์ง€์  ๊ฒฝํ—˜์„ ์—ฐ์žฌํ•˜๋Š” ์‹œ๋ฆฌ์ฆˆ ๋ฐœํ–‰
  3. ๊ธฐ๋ณธ์ ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ๋Šฅ (๊ฒŒ์‹œ๊ธ€/๋Œ“๊ธ€/๊ณต๊ฐ ๋“ฑ)



๐Ÿ›  ๊ธฐ์ˆ  ์Šคํƒ

  • Spring Boot(Java) ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ API ๋ฅผ ๊ฐœ๋ฐœํ•˜์˜€๊ณ , JPA ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ๋Š” AWS RDS(MySQL), Redis ๋ฅผ ์‚ฌ์šฉํ•˜์˜€๊ณ , AWS EC2 ๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„ ๋ฐฐํฌ๋ฅผ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ๋ฅผ ์œ„ํ•ด AWS S3 ๋ฒ„ํ‚ท์„ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • ํ˜‘์—… ๋ฐ ์ฝ”๋“œ ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด Github, API ๋ฌธ์„œ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด Postman๊ณผ Notion์„ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • Github Actions, CodeDeploy ๋ฅผ ์‚ฌ์šฉํ•ด CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•˜์˜€์Šต๋‹ˆ๋‹ค.



๐Ÿ‘ฉโ€๐Ÿ’ป ๊ฐœ๋ฐœ ๋‚ด์šฉ

  • ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ๋Šฅ (๊ฒŒ์‹œ๊ธ€, ๋Œ“๊ธ€/๋Œ€๋Œ“๊ธ€, ๊ณต๊ฐ ๋“ฑ)
  • ํ† ๋ก  ๊ด€๋ จ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ (ํ† ๋ก ์žฅ ๊ฐœ์„ค, ์ฐธ์—ฌ, ์ƒํƒœ ๋ณ€๊ฒฝ)
  • ์‹œ๋ฆฌ์ฆˆ - ๊ฒŒ์‹œ๊ธ€ ๊ทธ๋ฃนํ•‘์„ ํ†ตํ•œ ์‹œ๋ฆฌ์ฆˆ ๋ฐœํ–‰/์ถ”๊ฐ€/์‚ญ์ œ
  • ์•„์นด์ด๋ธŒ - ๊ฒŒ์‹œ๊ธ€ ์•„์นด์ด๋น™/์ถ”๊ฐ€/์‚ญ์ œ
  • ํŒ”๋กœ์šฐ & ํŒ”๋กœ์ž‰
  • Logback์„ ํ†ตํ•œ ๋กœ๊ทธ ๊ธฐ๋ก
  • Redis ์บ์‹œ ์ ์šฉ์„ ํ†ตํ•œ ์กฐํšŒ ์„ฑ๋Šฅ ๊ฐœ์„ 



๐Ÿ“‘ ๋ฌธ์„œ



๐Ÿงฉ ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜

image

CI/CD Pipeline

  1. ๊ฐœ๋ฐœ ์™„๋ฃŒ ํ›„ main ๋ธŒ๋žœ์น˜์— Push (or Pull Request ์ „์†ก)
  2. Github Actions ๋™์ž‘
  3. main ๋ธŒ๋žœ์น˜ Build
  4. jar ํŒŒ์ผ AWS S3์— ์—…๋กœ๋“œ
  5. Code Deploy ์‹คํ–‰
  6. AWS EC2์˜ Code Deploy๊ฐ€ AWS S3์— ์—…๋กœ๋“œ๋œ ํŒŒ์ผ์„ ๊ฐ€์ ธ์™€ ๋ฐฐํฌ
  7. ์ž๋™ํ™” ๋ฐฐํฌ (deploy.sh ์„ ํ†ตํ•ด jar ํŒŒ์ผ ์‹คํ–‰)



๐Ÿ’พ ERD Diagram

image



๐Ÿท Release Version

  • release/v1 - ๋ฒ ํƒ€ ๋ฒ„์ „ ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ์ฃผ์š” ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • release/v2 - ๋ฆฌํŒฉํ† ๋ง ๋ฐ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ



๐Ÿ” ํ™”๋ฉด ๊ตฌ์„ฑ

image image

booknuts_be's People

Contributors

jaejlf avatar sunheecho avatar

Stargazers

David Choi avatar

Watchers

 avatar

booknuts_be's Issues

Redis ์ ์šฉ

  • Redis ๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ๋” ์œ ๋ฆฌํ•œ ๋ถ€๋ถ„์€ Redis๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ
  • Redis Caching ์ „๋žต

Unit Test & Integration Test

  • ์ปจํŠธ๋กค๋Ÿฌ/์„œ๋น„์Šค/๋ ˆํฌ์ง€ํ† ๋ฆฌ ๊ณ„์ธต ๋‹จ์œ„ ํ…Œ์ŠคํŠธ
  • ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ

JPA ์„ฑ๋Šฅ ๊ฐœ์„ 

  • JPA N+1 ๋ฌธ์ œ ํ•ด๊ฒฐ
  • ์กฐํšŒ/์‚ญ์ œ ์„ฑ๋Šฅ ๊ฐœ์„ 
  • ํŽ˜์ด์ง• ๊ตฌํ˜„

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.