์ ์ฒด ๊ธ279 [ํธ๋ฌ๋ธ์ํ ] ์ฟ ํฐ ๋ฐ๊ธํ๋ค ํฐ์ง Deadlock, ๊ทธ๋ฆฌ๊ณ Redisson์ผ๋ก ํด๊ฒฐํ ์ด์ผ๊ธฐ ๐ฃ ๋์์ฑ ํ ์คํธ ์ค Deadlock ๋ฐ์! ๊ทธ๋ฆฌ๊ณ Redisson ๋ฝ๊น์ง ๋์ ํ ํธ๋ฌ๋ธ์ํ ์ ์ฐฉ์ ํ ์ธ ์ฟ ํฐ ๋ฐ๊ธ ๊ธฐ๋ฅ์ ๋ง๋ค๋ฉด์ ๊ฒช์๋ ํธ๋ฌ๋ธ์ํ ๊ณผ์ ์ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค!Deadlock์ด ์ค์ ๋ก ๋ฐ์ํ๋ ๋ถํ ํ ์คํธ ๊ฒฐ๊ณผ์, ๋ฝ ์ ๋ต์ ๊ณ ๋ฏผํ๊ณ ์ต์ข ์ ์ผ๋ก Redisson ๋ฝ์ ๋์ ํ๊ธฐ๊น์ง์ ์ค์ ๊ฒฝํ์ ๊ธฐ๋ฐ์ผ๋ก ํ์ด๋ธ ํธ๋ฌ๋ธ์ํ ๊ธฐ๋ก์ด๋ค! ๐ซ ๋ฌธ์ ์ํฉ: Deadlock ๋ฐ์ ์คํ๊ธฐ๋ณธ์ ์ธ ์ฟ ํฐ ๋ฐ๊ธ API๋ง ์์ฑํ ์ํ์์, ๋ค์ ์ฌ์ฉ์๊ฐ ๋์์ ๋ฐ๊ธ์ ์์ฒญํ๋ฉด ์ด๋ค ์ผ์ด ์ผ์ด๋ ๊น ๊ถ๊ธํ๋ค.๊ทธ๋์ JMeter๋ฅผ ์ด์ฉํด ๊ฐ๋จํ ๋ถํ ํ ์คํธ๋ฅผ ์งํํด ๋ดค๋ค.ํ ์คํธ ์กฐ๊ฑดํญ๋ชฉ๊ฐํ ์คํธ ๋๊ตฌApache JMeter์ค๋ ๋ ์100๋ช ๋ฃจํ ํ์1ํ (1๋ช ๋น 1ํ ๋ฐ๊ธ ์๋)์ฟ ํฐ ์๋10๊ฐ๋์ API/api/co.. 2025. 5. 13. [ํธ๋ฌ๋ธ์ํ ] Spring Boot JWT ์ธ์ฆ ํ๋ฆ ๋ง๋ค๊ณ 200 OK๋ง ๋์ค๋ ๋ฌธ์ ํด๊ฒฐ ๐ฅ JWT ์ธ์ฆ ๊ตฌํ & ํํฐ ํธ๋ฌ๋ธ์ํ ํ๋ก์ ํธ์์ JWT ์ธ์ฆ์ ์ฒ์์ผ๋ก ์ง์ ๊ตฌํํด ๋ดค๋ค.ํ์๊ฐ์ ๊ณผ ๋ก๊ทธ์ธ๊น์ง๋ ์ ์์ ์ผ๋ก ๋์ํ์ง๋ง.. ๋ฌธ์ ๋ ๊ทธ ์ดํ์๋ค.Controller๋ก ์์ฒญ์ด ๋์ด๊ฐ์ง ์๊ณ , 200 OK๋ง ๋์ค๋ ํ์์ด ๋ฐ์ํ๋ค.๋ฌธ์ ๋ฅผ ์ฐพ์ง ๋ชปํด์ ํ์ฐธ์ ํค๋งค๋ค๊ฐ, ๊ฒฐ๊ตญ ์ฒ์๋ถํฐ ์ฝ๋๋ฅผ ๋ค์ ์ ๋ฆฌํ๋ฉด์ ํด๊ฒฐํ๋ค. โ๏ธ JwtUtil ํด๋์คJWT๋ฅผ ๋ฐ๊ธํ๊ณ , ๊ฒ์ฆํ๊ณ , Claim ์ ๋ณด๋ฅผ ์ถ์ถํ๋ ์ญํ ์ ๋ด๋นํ๋ ํด๋์ค์ด๋ค.@Slf4j(topic = "JwtUtil")@Component@RequiredArgsConstructorpublic class JwtUtil { private static final String BEARER_PREFIX = "Bearer "; privat.. 2025. 5. 13. [TIL] ์ค๋์ Docker ๊ณต๋ถ ์์ํ ๋ ! ๐ ์ค๋์ ์ด๋ค ํ๋ฃจ์์ง..์ค์ ์๋ ๋ฌผ๋ฆฌ์น๋ฃ ๋ฐ๊ณ ์์ ์ ๋ฒ ์ฃผ๊น์ง ์งํํ๋ KPT ํ๊ณ ๋ฅผ ์์ฑํ๋ค.์ค๋๋ง์ ์ฐ๋ KPT ํ๊ณ ๋ผ์ ๊ทธ๋ฐ์ง ์๊ฐํ๋ฉด์ ์์ฑํ๋๋ผ ์๊ฐ์ ๊ฝค ๋ง์ด ์ก์๋จน์๋ค.์คํ์๋ ๋๋์ด Docker ๊ณต๋ถ๋ฅผ ์์ํ๋ค!! ๋ง์ฐ์ ์ ๊ตฌ๋งคํด ๋จ๋ Docker ๊ฐ์๋ฅผ ์ด์ ์ผ ๋ฃ๋ค๋...๊ฐ์ฌ๋์ด ๊ท์ ์์ ๋ค์ด์ค๋๋ก ์ค๋ช ์ ์ํด์ฃผ์ ์ ์ดํด๊ฐ ๊ธ๋ฐฉ๊ธ๋ฐฉ ๋์๋ค. ๋ํ ์ด๋ป๊ฒ ๊ณต๋ถํ๋ ๊ฒ์ด ๊ฐ์ฅ ํจ์จ์ ์ธ์ง ์๋ ค์ฃผ์ ์ ์์ผ๋ก์ ๊ณต๋ถ๋ ๊ทธ๋ ๊ฒ ์งํํด๋ณผ๊น ํ๋ค!๋ฌธ์ํ๋ก ๋จ๊ฒจ๋๋ ๊ฒ์ด ๊ฐ์ฅ ์ข๋ค๋ ๊ฒ์ ์ค๋ ๋ค์ ํ๋ฒ ๋๊ผ๊ณ ์ง๊ธ๊น์ง ํ๋ ๋๋ก ๋ฌธ์ํ๋ฅผ ์ด์ฌํ ํด๋๊ณ ๋ธ๋ก๊ทธ์ ์ ๋ฆฌ๋ ์ํด๋ ์๊ฐ์ด๋ค.์ด๋ฒ ์ฃผ๋ ํ์ต์ ์ง์คํ๋ ๊ธฐ๊ฐ์ด๋๊น ์ต๋ํ ๊ฐ์ ๋น ๋ฅด๊ฒ ๋ฃ๊ณ Docker ๋ง์คํฐ ํ ๋ค์ ๋ฉ์์ง ๋ธ๋ก์ปค๋ ๊ณต๋ถ.. 2025. 5. 12. [Docker] ๋์ปค(Docker)๊ฐ ๋ญ๋ฐ ์ด๋ ๊ฒ ๋ง์ด ์จ? ํ์ ์์ Docker๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ ์ด์ ๊ฐ ๋ญ๊น?๐ ์ด์์ฑ: ํน์ ํ๋ก๊ทธ๋จ์ ๋ค๋ฅธ ๊ณณ์ผ๋ก ์ฝ๊ฒ ์ฎ๊ฒจ์ ์ค์น ๋ฐ ์คํํ ์ ์๋ ํน์ฑ Docker์ ์ฅ์ ๐ ๋งค๋ฒ ๊ท์ฐฎ์ ์ค์น ๊ณผ์ ์ ์ผ์ผ์ด ๊ฑฐ์น์ง ์์๋ ๋๋ค!๐ ํญ์ ์ผ๊ด๋๊ฒ ํ๋ก๊ทธ๋จ์ ์ค์นํ ์ ์๋ค. (๋ฒ์ , ํ๊ฒฝ ์ค์ , ์ต์ , ์ด์ ์ฒด์ ๋ฑ)๐ ๊ฐ ํ๋ก๊ทธ๋จ์ด ๋ ๋ฆฝ์ ์ธ ํ๊ฒฝ์์ ์คํ๋๊ธฐ ๋๋ฌธ์ ํ๋ก๊ทธ๋จ ๊ฐ์ ์๋ก ์ถฉ๋์ด ์ผ์ด๋์ง ์๋๋ค. IP์ ๊ฐ๋ ๐ก ํ ์ค ์์ฝ: ๋คํธ์ํฌ ์์์์ ํน์ ์ปดํจํฐ๋ฅผ ๊ฐ๋ฆฌํค๋ ์ฃผ์์๋์ ๊ฐ์ ๊ฐ์ด IP ์ฃผ์์ด๋ค.13.250.15.132 Port์ ๊ฐ๋ ๐ก ํ์ค ์์ฝ: ํ ์ปดํจํฐ ๋ด์์ ์คํ๋๊ณ ์๋ ํน์ ํ๋ก๊ทธ๋จ์ ์ฃผ์์ด๋ค.์๋์ ๊ฐ์ ๊ฐ์์ IP ๋ค์ ์ค๋ ์ซ์๊ฐ ํฌํธ ๋ฒํธ๋ฅผ ์๋ฏธํ๋ค.13.250.1.. 2025. 5. 12. [STUDY] ์ ๋๋ ๊ณต๋ถํด๋ ์ ๋๊น? ๐ ๊ฐ์ ๋ฃ๋ ๋ฐฉ๋ฒ ์ ๋ฆฌ ๐ง ์ด๋ ต๊ฒ ๊ณต๋ถํด์ผ ํ๋ค๋จ์ํ ๊ฐ์๋ฅผ ๋ฃ๊ธฐ๋ง ํด์๋ ๋ถ์กฑํ๋ค.๐ ๋ด์ฉ ๋์ํํ๊ธฐ (๊ทธ๋ฆผ์ด๋ ํ๋ก ์ ๋ฆฌ)๐ ๋๋ง์ ์ธ์ด๋ก ์ค๋ช ํ๊ธฐ (๋จ์๊ฒ ์ค๋ช ํ ์ ์์ ์ ๋๋ก)๐ ์์ฝํ๊ธฐ ๊ฐ์ฅ ์ข์ ๊ณต๋ถ ๋ฐฉ๋ฒ = ๋ธ๋ก๊ทธ ์์ฑํ๊ธฐ ํ์ง๋ง ๋ด์ฉ์ ๊ทธ๋๋ก ๋ณต๋ถ ํด์ ์ฌ๋ฆฌ๊ธฐ๋ง ํ๋ฉด ์๋ฏธ๊ฐ ์๋ค."๋ด๊ฐ ์ดํดํ ๋ฐฉ์"์ผ๋ก ๋ค์ ์ ๋ฆฌํ๊ฑฐ๋ ์์ฝํด์ผ ์ง์ง ๊ณต๋ถ๊ฐ ๋๋ค.์์ฑ๋๋ณด๋ค๋ "๋์ค์ ๊ธฐ๋ก๋ง ๋ณด๊ณ ๋ ๋ค์ ๊ตฌํํ ์ ์๊ฒ" ์์ฑํ๋ ๋ง์ธ๋๊ฐ ์ค์ํ๋ค. ๐ฏ ํ๋ ํ ๋ฒ์น์ ์ ์ฉํด์ ๊ณต๋ถํ์์์ฃผ ์ฐ์ด๋ 20%๋ง ์ ๋๋ก ์ตํ๋ ๋ฐ ์ง์คํ๋ค.๋๋จธ์ง 80%๋ ํ์ํ ๋ ์ฐพ์์ ์ฌ์ฉํ๋ฉด ๋๋ค. 100% ๋ค ์ดํดํ๊ณ ๋์ด๊ฐ๋ ค๊ณ ํ์ง ๋ง์! ์ค์ ์์๋ 20%๋ง ์์ฃผ ์ฌ์ฉํ๋ค. ๐ ์๋ฌ๋ฅผ ๋ง๋ฌ์ .. 2025. 5. 12. [KPTํ๊ณ ] ์ด์ปค๋จธ์ค ํ๋ก์ ํธ ์ด์ปค๋จธ์ค ํ๋ก์ ํธ์ ๋ํ ๊ฐ์ธ KPT ํ๊ณ Keep: ์ด๋ฒ ํ๋ก์ ํธ์์ ์ ์งํ์ผ๋ฉด ํ๋ ๋ถ๋ถ์๋ก์ด ๊ธฐ์ ์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ ค์์ ๋๋ผ์ง ์์ ์ ์ด๋ฒ ํ๋ก์ ํธ์์ ์ฒ์์ผ๋ก ์ธ์ฆ/์ธ๊ฐ ๋ถ๋ถ์ ๋งก์ JWT์ Spring Security๋ฅผ ์ฌ์ฉํ๋ค.์ฒ์ ์ ํ๋ ๋ถ์ผ๋ผ์ ๋๋ ค์๋ ์์์ง๋ง, ๋์ ํ๋ ์์ง๊ฐ ๋ ๊ฐํด์ ๋งก์ ์ญํ ์ ๋๊น์ง ํด๊ฒฐํด๋ผ ์ ์์๋ค.๋์์ฑ ์ ์ด๋ ์ฒ์ ๊ฒฝํํ๋ ์์ญ์ด์์ง๋ง, ๊ฐ๋ ๋ถํฐ ์ฐจ๊ทผ์ฐจ๊ทผ ์ ๋ฆฌํ๋ฉฐ ํ์ต์ ์งํํ๊ณ ๋ฌด์ฌํ ๋ง๋ฌด๋ฆฌํ ์ ์์๋ค.์ํํ ์์ฌ์ํตํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉด์ ๋ค๋ฅธ ํ์์ด ๊ตฌํํ ๋ถ๋ถ์ด ์ดํด๋์ง ์์ ๋๋ ๋ฐ๋ก ์ฐพ์๊ฐ์ ์ง๋ฌธํ๊ณ ์ดํดํ๋ ค๋ ๋ ธ๋ ฅ์ ์๋ผ์ง ์์๋ค.์ ๊ทน์ ์ผ๋ก ์๊ฒฌ์ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ, ๋ ๋์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํ๊ธฐ ์ํด ํจ๊ป ๊ณ ๋ฏผํ๊ณ ํ๋ ฅํ๋ค.๊ผผ๊ผผํ ์ฝ๋ ๋ฆฌ๋ทฐ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ.. 2025. 5. 12. ์ด์ 1 2 3 4 5 6 7 8 ยทยทยท 47 ๋ค์