Skip to content
ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

27 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

header

๐Ÿš€ STACK

Environment

์ธํ…”๋ฆฌ์ œ์ด ๊นƒํ—ˆ๋ธŒ ๊นƒ POSTMAN

Development

์ž๋ฐ” SPRING BOOT SQL Gradle AWS

LV3.12 AWS

HEALTH CHECK

Screenshot 2024-10-10 at 5 03 24โ€ฏPM

EC2

Screenshot 2024-10-10 at 5 07 48โ€ฏPM

RDS Database

Screenshot 2024-10-10 at 8 07 36โ€ฏPM

LV3.13 ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ

  1. ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ๋ฏธ์ ์šฉ (JPQL)

  2. ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ๋ฏธ์ ์šฉ (JPA)

  3. ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ (JPQL)

  4. ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ (JPA)

ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ๋ฏธ์ ์šฉ (JPQL)

Screenshot 2024-10-10 at 9 20 40โ€ฏPM

ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ๋ฏธ์ ์šฉ (JPA)

Screenshot 2024-10-10 at 9 20 27โ€ฏPM

ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ (JPQL)

Screenshot 2024-10-10 at 9 36 55โ€ฏPM

ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ (JPA)

Screenshot 2024-10-10 at 9 38 45โ€ฏPM

๐Ÿ“Š๊ฒฐ๊ณผ

ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค JPA JPQL
ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ๋ฏธ์ ์šฉ 428ms 214ms
ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ 27ms 7ms
  • JPA ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ์‹œ 94% ์ง€์—ฐ์‹œ๊ฐ„ ๋‹จ์ถ•

  • JPQL ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ์‹œ 97% ์ง€์—ฐ์‹œ๊ฐ„ ๋‹จ์ถ•

  • JPA to JPQL ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ์ ์šฉ์‹œ 75% ์ง€์—ฐ์‹œ๊ฐ„ ๋‹จ์ถ•

  • JPA to JPQL ํ…Œ์ด๋ธ” ์ธ๋ฑ์Šค ๋ฏธ์ ์šฉ์‹œ 50% ์ง€์—ฐ์‹œ๊ฐ„ ๋‹จ์ถ•

โš’๏ธTroubleshooting

1. JARํŒŒ์ผ ์‹คํ–‰์‹œ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์ธ์‹ ์˜ค๋ฅ˜

์›์ธ

  • application.yaml์˜ ํ™˜๊ฒฝ๋ณ€์ˆ˜๊ฐ€ Intellij์—์„œ๋Š” ์„ ์–ธ๋˜์—ˆ์ง€๋งŒ AWS EC2 Ubuntu์—์„œ๋Š” ์ ์šฉ์ด ์•ˆ๋œ ์ƒํƒœ

ํ•ด๊ฒฐ

  • AWS EC2 Ubuntu bash์—์„œ bashrc๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ ์–ธ.

    nano .bashrc
    //๋กœ๋“œ๋œ ๋ฐ์ดํ„ฐ ์•„๋ž˜์— ํ™˜๊ฒฝ๋ณ€์ˆ˜ key ์™€ value๋ฅผ ์„ ์–ธ
    export {key} = value
    
    cntrl+x -> y -> enter //๋ณ€๊ฒฝ๋œ .bashrc ์ €์žฅ
    
    source .bashrc // ์ €์žฅ๋œ .bashrc๋‚ด๋ถ€์˜ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ source๋กœ ์ง€์ •
    java -jar {jarfilename}
    

2. RDS ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ url ๋ฐ ์œ ์ € ์ธ์‹ ์˜ค๋ฅ˜

์›์ธ

  • Mysql Master Id๋ฅผ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ถŒํ•œ์ด ์—†์–ด ์—ฐ๊ฒฐ์„ ๋ชปํ•จ
  • application-local.yaml ํŒŒ์ผ ๋‚ด๋ถ€์˜ database url์ด local host๋ฅผ ์‚ฌ์šฉ

ํ•ด๊ฒฐ

  • EC2 Mysql ์ ‘์†ํ•˜์—ฌ ์œ ์ €๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ์œ ์ €์—๊ฒŒ ๊ถŒํ•œ์„ ๋ถ€์—ฌ

     mysql -u{RDSMASTERID} -p -h{endpoint}
      {RDSPASSWORD}
    
      CREATE USER '{USERNAME}'@'%' IDENTIFIED BY '{PASSWORD}'; // USER์ƒ์„ฑ
      CREATE DATABASE {DBNAME};//DATABASE ์ƒ์„ฑ
      GRANT ALL PRIVILEGES ON *.* TO  '{USERNAME}'@'%'; // ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์˜ ๋ชจ๋“  DB & TABLE์— ๊ถŒํ•œ๋ถ€์—ฌ
      OR
      GRANT ALL PRIVILEGES ON {DBNAME}.* TO  '{USERNAME}'@'%'; // ํŠน์  DB์— ๋Œ€ํ•ด ๋ชจ๋“  ๊ถŒํ•œ๋ถ€์—ฌ
      FLUSH PRIVILEGES;//๋ณ€๊ฒฝ๋œ ๊ถŒํ•œ์„ ์ฆ‰์‹œ ๋ฐ˜์˜
    
  • application-local.yaml ๋‚ด๋ถ€์˜ database url์„ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ๋ณ€๊ฒฝํ•˜์—ฌ Intellij์™€ AWS EC2 ์—์„œ ๋‹ค๋ฅด๊ฒŒ ์ ์šฉ (Intellij -> localhost, AWS EC2 -> RDS)

       url: jdbc:mysql://${MYSQL_HOST}:${MYSQL_PORT}/${MYSQL_DBNAME}
    

    AWS EC2์—์„œ 1๋ฒˆ๊ณผ ๊ฐ™์ด .bashrc์—์„œ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ ์–ธ

        MYSQL_HOST = {RDSendpoint}
        MYSQL_PORT = {RDSPort}
        MYSQL_DBNAME = {DBname}
    

About

spring-plus

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages