Backend(15)
-
AWS SQS๋ฅผ ์ด์ฉํ์ฌ ํ ๋ํธ ๋ณ ๋น๋๊ธฐ ์์ ์ค์ธ์ฐ๊ธฐ
์ต๊ทผ ํ์ฌ์์ ์งํ ์ค์ธ ์์ ์์ ์๋์ ๊ฐ์ ์๊ตฌ์ฌํญ์ ๋ง๋๊ฒ ๋์์ต๋๋ค.์๋น์ค ๋ด์๋ ์ ๋ง์ ํ ๋ํธ๊ฐ ์กด์ฌ๊ฐ ํ ๋ํธ ๋ด์์๋ ํน์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๊ณ , ์ด๋ฅผ ์ฒ๋ฆฌํ๋ ์์ปค ๋ก์ง์ด ํ์ (ํ๋ฒ ์คํ์ 500ms ~ 5s, ํ ๋ํธ ๋ด ๋ฐ์ดํฐ ์์ ๋น๋ก)์ด๋ฒคํธ ๋ฐ์ ๋น๋๋ ๋์ง ์์์ด ๋ ์ด๋ค ์์ปค ๋ก์ง์ ํ ๋ํธ ๋ณ๋ก ์ค๋ก์ง ํ๋์ฉ๋ง ๋์ํด์ผ ํจ. (ํ ๋ํธ ๋ด ๋์์ฑ X)ํด๋น ๊ธ์์๋ ์ด ์๊ตฌ์ฌํญ์ ๋ง์กฑ์ํค๊ธฐ ์ํ ๋ฐฉ์์ ๋ํด ๋ค๋ค๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.์ต์ด ๊ตฌํ์ด๊ธฐ์๋ ์ด ์๊ตฌ์ฌํญ์ ๋ง์กฑ์ํค๊ธฐ ์ํด, ์๋์ ๊ฐ์ ๋ฐฉํฅ์ฑ์ผ๋ก ์์ ์ ์งํํ์ต๋๋ค. ๊ฐ ๊ตฌ์กฐ์ ๋ํ ์ค๋ช ์ ์๋์ ๊ฐ์ต๋๋ค.์๋ฒ ์ ํ๋ฆฌ์ผ์ด์ ์์๋ ์ ์ ์ ํน์ ํ๋์ ๋ฐ๋ผ ์ด๋ฒคํธ๋ฅผ ๋ฐํํ์ฌ SQS๋ก ์ ๋ฌํฉ๋๋ค.์ ๋ฌ๋ ์ด๋ฒคํธ๋ ์ฌ์ ์ ๋ฑ๋ก๋ AWS ๋๋ค..
2025.02.02 -
[Spring] ๋ฐ์ฝ๋ ์ดํฐ ํจํด์ ํตํ ๋์์ฑ ๋ฌธ์ ํด๊ฒฐ ๋ฐ ๋น์ฆ๋์ค ๋ก์ง๊ณผ ๋์์ฑ ๊ด๋ จ ๋ก์ง ๊ฐ์ ๊ด์ฌ์ฌ ๋ถ๋ฆฌํ๊ธฐ
๊ฐ์ํ์ฌ ์ง์ธ 3๋ถ๊ณผ ํจ๊ป ๋์์ฑ ๋ฌธ์ ์ ๋ํ ๊ฒฝํ์ ์๊ธฐ ์ํด ํฐ์ผํ ์๋น์ค๋ฅผ ๊ฐ๋ฐํ๋ ํ๋ก์ ํธ๋ฅผ ์งํํ๊ณ ์์ต๋๋ค. GitHub - Tiketeer/Tiketeer-BEContribute to Tiketeer/Tiketeer-BE development by creating an account on GitHub.github.comํด๋น ํ๋ก์ ํธ๋ฅผ ์์ํ๋ฉด์ ๋ฌ์ฑํ๊ณ ์ ํ๋ ํต์ฌ ๋ชฉํ ์ค ํ๋๋, ๋์์ฑ ๋ฌธ์ ๋ฅผ ์ง์ ๊ฒช์ด๋ณด๊ณ ์ด๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ๋ก ์ ๋ํ ํ์ต๊ณผ ์ด๋ฅผ ์ค์ ๋ก ํด๊ฒฐํด๋ณธ ๊ฒฝํ์ ๊ฐ๋ ๊ฒ์ด์์ต๋๋ค.์ ํฌ ํ๋ก์ ํธ ๋ด์์ ๋์์ฑ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ์ง์ ์ ๋ฐ๋ก ํฐ์ผํ ์ ์ํํ๋ ๋ก์ง์ ๋๋ค. ์๋ฒ ์์๋ ํ์ ๋ ์์ ํฐ์ผ์ด ์กด์ฌํ๊ฒ ๋๋๋ฐ, ์ด์ ๋ํด ํฐ์ผ๋ณด๋ค ๋ ๋ง์ ๊ณ ๊ฐ์ด ๋์๋ค๋ฐ์ ..
2024.04.22 -
[Spring] ์ ๊ท ํ๋ก์ ํธ๋ฅผ ์ํด ์ฌ์ฉ ํด๋ด์งํ Hibernate Logging ์ต์ ์ ๋ฆฌ
ํ์ฌ ์ง์ธ 3๋ถ๊ณผ ํจ๊ป ์งํํ๊ณ ์๋ ์คํ๋ง ํ๋ก์ ํธ๊ฐ ์๋ค. GitHub - Tiketeer/Tiketeer-BE Contribute to Tiketeer/Tiketeer-BE development by creating an account on GitHub. github.com ํ๋ก์ ํธ ์ด์ฐฝ๊ธฐ ์ธํ ์ ํ์ด๋ฒ๋ค์ดํธ ๋ก๊ทธ ์ต์ ์ ์๋์ฒ๋ผ ๊ฐ๋จํ๊ฒ๋ง ์คฌ์๋๋ฐ, ํ๋ก์ ํธ๋ฅผ ์งํ ํจ์ ์์ด ๋๋ฒ๊น ๋ชฉ์ ์ผ๋ก DB ์ธก ๋ก๊ทธ๋ฅผ ๊น๋ค์ง์ ๋ ๋๋ ํ์๋ค์ ๋ก๊ทธ ์ ๋ณด์ ๋ํ ๋ง์กฑ๋๊ฐ ๊ทธ๋ฆฌ ๋์ง ์์๋ค. (์ ์ ํ์ํ ๋ก๊ทธ๊ฐ ์๋ค, ๋ก๊ทธ๋ค์ด ๋์ ์๋ค์ด์จ๋ค, ๋ก๊ทธ๋ค์ด ๋๋ฌด ๋ง์ด ์ฐํ๋ค... ๋ฑ) # ๊ธฐ์กด application.yml spring.jpa.show-sql: true spring.jpa.properties.h..
2024.04.12 -
๋ถํํ ์คํธ๋ฅผ ์ํด k6 + Prometheus + Grafana ์๋ ํ๊ฒฝ ๊ตฌ์ฑํ๊ธฐ (with Docker-compose)
k6๋ฅผ ํตํ๋ฉด ๋ถํํ ์คํธ๋ฅผ js ๊ธฐ๋ฐ ์คํฌ๋ฆฝํธ๋ก ์์ฝ๊ฒ ์์ฑ์ด ๊ฐ๋ฅํ๋ค. ๋ค๋ง k6๋ ๋จ์ ํ ์คํธ ๋ง์ ์ํํด์ฃผ๊ธฐ ๋๋ฌธ์ ์ถ๊ฐ์ ์ธ ์๊ฐํ ๊ตฌ์ฑ์ ์งํํด์ผ ํ ํ์๊ฐ ์๋ค. ์ด๋ฅผ ์ํด ๊ตฌ๊ธ๋ง์ ํด๋ณด๋ฉด, ๋๋ถ๋ถ์ ๋ ํผ๋ฐ์ค์์ ์๋์ผ๋ก ์ด๋ฅผ ๊ตฌ์ฑํ๋ค. (Grafana UI์ ์ ์ํด์ Datasource, Dashboard๋ฅผ ์ง์ ๋ฑ๋กํ๋ ์) ๋ฐ๋ผ์ ๋ถํ ํ ์คํธ๋ฅผ ์งํํ๊ณ ์ ํ๋ ๋ชจ๋๊ฐ ๋ฐฉ๋ฒ์ ์์งํด์ผ ํ๋ค๋ ๊ฒ์ธ๋ฐ, ๊ฐ์ธ์ ์ผ๋ก ์ด๋ ๋นํจ์จ์ ์ด๋ผ ์๊ฐํ์ฌ ๋ถํ ํ ์คํธ + ์๊ฐํ๋ฅผ ํ๋ฒ์ ์งํํ ์ ์๋ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๊ณ ์ ํ๋ค. ๊ฐ์ธ์ ์ผ๋ก ๋ก์ปฌ PC์ ์ด๊ฒ์ ๊ฒ ์ค์นํ๋ ๊ฒ์ ์ ํธํ์ง ์์์, ๋์ปค ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋กํ docker-compose ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ์๋ค. Docker-compose.yml vers..
2024.04.02 -
์ฌ์ด๋ ํ๋ก์ ํธ ๋ด ๋ถํํ ์คํธ & ์๊ฐํ ๊ธฐ์ ์ ์ ๊ธฐ (with k6, nGrinder, Grafana)
ํ์ฌ ์ง์ธ ๋ถ๋ค๊ณผ ํฐ์ผํ ์ฌ์ดํธ ํ๋ก์ ํธ๋ฅผ ์งํ ์ค์ด๋ค. GitHub - Tiketeer/Tiketeer-BE Contribute to Tiketeer/Tiketeer-BE development by creating an account on GitHub. github.com ํด๋น ํ๋ก์ ํธ์ ๋ฉ์ธ ์ฃผ์ ๋ ๋ฐ๋ก '๋์์ฑ ์ด์ ํธ๋ค๋ง'์ธ๋ฐ, ์ด๋ฅผ ์ํด ๋ถํ ํ ์คํธ๋ฅผ ์งํํ ๊ณํ์ด ์๋ค. ์ด๋ฅผ ์ํด, ํด๋น ๊ธ์์๋ ์ฌ๋ฌ ๋ถํ ํ ์คํธ ํด ์ค ์ด๋ค ๊ฒ์ ์ ํํ ์ง ๊ณ ๋ฏผํ ๊ณผ์ ๊ณผ ์ต์ข ์ ์ผ๋ก ์ ํํ๊ฒ ๋ ํด์ ๋ํด ์๊ฐํ๊ณ ์ ํ๋ค. ํ ์คํ ํด ์ ์ ์ ๊ณ ๋ ค ์ฌํญ ๋จผ์ ํ ์คํ ํด ์ ์ ์ ๊ณ ๋ คํ ์ฌํญ๋ค์ ๋ค์๊ณผ ๊ฐ๋ค. ๊ธฐ๋ณธ์ ์ธ ๋ถํํ ์คํธ ์๋๋ฆฌ์ค ์์ฑ ๊ฐ๋ฅ์ฑ ์ฑ๋ฅ (์ถฉ๋ถํ ๋ถํ๋ฅผ ๋ง๋ค์ด ๋ผ ์ ์๋๊ฐ) Docker(Com..
2024.04.02 -
[Spring Security] OncePerRequestFilter.shouldNotFilter ๋ฉ์๋ ํจ์จ์ ์ผ๋ก ์ค๋ฒ๋ผ์ด๋ฉ ํ๊ธฐ
์ด๋ฌ ์ด๋ถํฐ ์ง์ธ 3๋ถ๊ณผ ํจ๊ป ์คํ๋ง ํ ์ด ํ๋ก์ ํธ๋ฅผ ์งํํ๊ณ ์๋ค. GitHub - Tiketeer/Tiketeer-BE Contribute to Tiketeer/Tiketeer-BE development by creating an account on GitHub. github.com ํด๋น ํ๋ก์ ํธ์์๋ ์๋ํฌ์ธํธ ๋ณดํธ ์์ ์ ์ํด Spring Security์ JWT๋ฅผ ์ด์ฉ ์ค์ธ๋ฐ, ์ด๋ฅผ ์ํด Spring Security์ OncePerRequestFilter๋ฅผ ๊ตฌํํ๋ JwtAuthFilter๋ฅผ ์๋์ฒ๋ผ ๋ฐ๋ก ์์ฑํด์ค ๋ค ํํฐ ์ฒด์ธ์ ์ถ๊ฐํด์ฃผ์๋ค. @Component public class JwtAuthenticationFilter extends OncePerRequestFilter { @Overr..
2024.03.23