Skip to content

Latest commit

ย 

History

History
148 lines (91 loc) ยท 3.7 KB

File metadata and controls

148 lines (91 loc) ยท 3.7 KB

Special Survey Service

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

๊ฐœ๋ฐœ ๊ธฐ๊ฐ„ : 2023.07 ~ 2023.08

๐Ÿ” SSS๋Š” ์„ค๋ฌธ์กฐ์‚ฌ ํ›„ ํˆฌ๋ช…ํ•˜๊ณ  ๊ณต์ •ํ•˜๊ฒŒ ๋ฆฌ์›Œ๋“œ๋ฅผ ์ง€๊ธ‰๋ฐ›๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์ €ํฌ๋Š” ์ œ์ž‘ํ•œ ์„ค๋ฌธ์— ๋Œ€ํ•ด ๋žœ๋ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•˜์—ฌ ๋‹น์ฒจ์ž๋ฅผ ์ถ”์ถœํ•˜๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‹ค์‹œ๊ฐ„ ๋กœ๊ทธ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋‹น์ฒจ์ž๋ฅผ ํˆฌ๋ช…ํ•˜๊ฒŒ ๊ณต๊ฐœํ•จ์œผ๋กœ์จ ๋ชจ๋‘๊ฐ€ ๋‹น์ฒจ์ž๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค.



๐Ÿ’ป Developer

๋ฐ•์Šฌ๋นˆ๐Ÿ‘‘ ์ตœ์—ฐ์žฌ ๊ถŒ์„ ๊ทผ
BackEnd BackEnd BackEnd
๊ณฝ๋ณด์„  ์‹ ์ข…ํ˜ ์ „๋Œ€ํ˜„
FrontEnd FrontEnd FrontEnd

์‚ฌ์šฉ ๊ธฐ์ˆ  ์Šคํƒ

Java(17.0.7) SpringBoot(3.1.1) SpringSecurity
java Spring security

ํ…Œ์ŠคํŒ… ๋„๊ตฌ

Junit5
junit

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

MySql(8.0) redis
mysql redis

๋ฐฐํฌ

AWS Docker Jenkins
aws docker jenkins

ERD

erd

๐ŸŽ‰๊ธฐ๋Šฅ ๋ชฉ๋ก

๋ณธ๋ฌธํ™•์ธ

์„ค๋ฌธ ์ž‘์„ฑ์ž ๊ธฐ๋Šฅ

  • ์„ค๋ฌธ ์กฐ์‚ฌ ์ž‘์„ฑ, ์‹œ์ž‘, ๋งˆ๊ฐ
  • ์„ค๋ฌธ ์กฐ์‚ฌ ์ฆ‰์‹œ ๋‹น์ฒจ, ๋งˆ๊ฐ ํ›„ ๋‹น์ฒจ ๊ธฐ๋Šฅ ์„ ํƒ
  • ์„ค๋ฌธ ์กฐ์‚ฌ ํ†ต๊ณ„
  • ์„ค๋ฌธ ์‘๋‹ต์ž ๊ธฐ๋Šฅ

  • ๋ณธ์ธํ™•์ธ์„ ์œ„ํ•œ ํœด๋Œ€ํฐ ์ธ์ฆ
  • ์‘๋‹ต ๊ฐ€๋Šฅํ•œ ์„ค๋ฌธ ์ถ”์ฒœ ๊ธฐ๋Šฅ
  • ์„ค๋ฌธ ์กฐ์‚ฌ ์‘๋‹ต
  • ์‘๋‹ตํ•œ ์„ค๋ฌธ ๋‹น์ฒจ ํ™•์ธ ๊ธฐ๋Šฅ
  • ์„ค๋ฌธ ๋‹น์ฒจ์ž ๋ชฉ๋ก ๋กœ๊ทธ ํ™•์ธ ๊ธฐ๋Šฅ
  • ๐Ÿงฑ ์•„ํ‚คํ…์ฒ˜

    architecture

    ๐Ÿ›  ๊ธฐ์ˆ  ์„ ํƒ ๋ฐฐ๊ฒฝ

    Redis

    redis_img
    ์„ค๋ฌธ์— ๋‹น์ฒจ ์ƒํ’ˆ์ด ์žˆ๋‹ค๋Š” ์กฐ๊ฑด ๋•Œ๋ฌธ์— ๋ณธ์ธ ์ธ์ฆ์„ ํ†ตํ•ด 1์ธ 1๊ณ„์ •๋งŒ ๊ฐ€์ž…ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š”๊ฒƒ์ด ์ค‘์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.
    ๊ทธ๋ž˜์„œ ๋ณธ์ธ์ธ์ฆ์€ ํœด๋Œ€ํฐ ์ธ์ฆ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ํ•˜์˜€๊ณ  ์ธ์ฆ์ฝ”๋“œ์˜ 5๋ถ„์˜ ์œ ํšจ๊ธฐ๊ฐ„๊ณผ ๋‹จ๋ฐœ์„ฑ ๋ฐ์ดํ„ฐ๋ผ๋Š” ํŠน์„ฑ ๋•Œ๋ฌธ์— RDBMS์— ์ €์žฅํ•˜๋Š” ๊ฒƒ์€ ์ ํ•ฉํ•˜์ง€ ์•Š๋‹ค๊ณ  ํŒ๋‹จํ•ด TTL์„ ์ง€์›ํ•ด์ฃผ๊ณ  ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์ด ๋น ๋ฅธ Redis๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

    Quartz

    quartz
    ์„ค๋ฌธ ์‹œ์ž‘ ๋งˆ๊ฐ ์ด๋ผ๋Š” ์ƒํƒœ๋ฅผ ๋™์ ์œผ๋กœ ๋ณ€๊ฒฝ์„ ํ•˜๋Š” ์Šค์ผ€์ค„๋ง ์ž‘์—…์ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋™์ ์œผ๋กœ ๋ณ€ํ•œ๋‹ค๋Š” ํŠน์ง• ๋•Œ๋ฌธ์— @Scheduled ์–ด๋…ธํ…Œ์ด์…˜์œผ๋กœ๋Š” ๋ถ€์กฑํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์—ฌ Quartz ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.


    โš™ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ, ์ปค์Šคํ…€ ์—๋Ÿฌ ์ฝ”๋“œ

    testcode


    • ํ”„๋กœ์ ํŠธ์˜ ๋ชฉํ‘œ๋Š” ์‹ค ์‚ฌ์šฉ์ž๋ฅผ ๋ฐ›์ž์˜€์Šต๋‹ˆ๋‹ค.
    • ์•ˆ์ •์ ์ธ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ์ตœ๋Œ€ํ•œ ๋งŽ์€ ์ปค์Šคํ…€ ์—๋Ÿฌ ์ฝ”๋“œ์™€ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ๊ทธ ๊ฒฐ๊ณผ 223๊ฐœ์˜ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ, jacoco ๋ผ์ธ ์ปค๋ฒ„๋ฆฌ์ง€ 100% ๋‹ฌ์„ฑ, ์•ฝ 60๊ฐœ ์ปค์Šคํ…€ ์—๋Ÿฌ ์ฝ”๋“œ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.