๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ด๐Ÿ’ป/๐‘๐ž๐๐ข๐ฌ (2)

๐‘†๐‘ข๐‘›๐‘ โ„Ž๐‘–๐‘›๐‘’ ๐‘Ž๐‘“๐‘ก๐‘’๐‘Ÿ ๐‘Ÿ๐‘Ž๐‘–๐‘›โœง

[Redis] Redis๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์บ์‹ฑ& ์กฐํšŒ ์„ฑ๋Šฅ ๊ฐœ์„ ํ•˜๊ธฐ

Redis ํŠน์ง•๊ณผ ์žฅ/๋‹จ์ ์— ์•Œ์•„๋ณด์ž Redis ํŠน์ง• In-memory ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ key-value ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค. ๋‹ค์–‘ํ•œ command๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ single thread์ด๋‹ค. ์žฅ์  ์—ฌ๋Ÿฌ instance๊ฐ€ ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•  ์ˆ˜์žˆ๋‹ค. ๋‹ค์–‘ํ•œ command๋ฅผ ์ง€์›ํ•œ๋‹ค. ๋‹จ์  Local caching์— ๋น„ํ•ด์„œ๋Š” ๋Š๋ฆฌ๋‹ค. ํ˜„์žฌ ํ•„์ž์˜ ํ”„๋กœ์ ํŠธ๋Š” ์ƒํ’ˆ ๋ฐ์ดํ„ฐ๋ฅผ ๋งค๋ฒˆ ์š”์ฒญ๋งˆ๋‹ค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์กฐํšŒํ•ด์„œ ๊ฐ€์ ธ์˜ค๊ณ  ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ณ€ํ™”ํ•˜์ง€ ์•Š๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋งค๋ฒˆ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์กฐํšŒํ•ด์„œ ๊ฐ€์ ธ์˜จ๋‹ค๋ฉด ์„ฑ๋Šฅ์— ๋ฌด๋ฆฌ๊ฐ€ ๊ฐˆ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด ๋ฐ์ดํ„ฐ๋ฅผ redis๋กœ ์บ์‹ฑ์„ ํ•ด๋‘๊ณ  ์กฐํšŒํ•  ๋•Œ ์บ์‹ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ redis๋กœ๋ถ€ํ„ฐ ์กฐํšŒ๋ฅผ ํ•ด์„œ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๋„๋ก ๊ฐœ์„ ์„ ํ•ด๋ณด์ž. ๋˜ํ•œ Redis๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” failover์— ๋Œ€ํ•œ ๋ถ€..

[Redis] Redis์„ ํ†ตํ•ด JWT ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ ๊ตฌํ˜„ํ•˜๊ธฐ

ํ”„๋กœ์ ํŠธ์—์„œ JWT์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ๋กœ๊ทธ์•„์›ƒ ๊ตฌํ˜„์„ ์œ„ํ•ด Redis๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ–ˆ๋‹ค.JWT์˜ ํŠน์„ฑ์ƒ ํ•œ ๋ฒˆ ๋ฐœ๊ธ‰๋œ ํ† ํฐ์€ ๋งŒ๋ฃŒ๋˜๊ธฐ ์ „๊นŒ์ง€ ๊ณ„์† ์œ ํšจํ•˜๊ฒŒ ๋‚จ์•„์žˆ๊ธฐ๋•Œ๋ฌธ์— ๋กœ๊ทธ์•„์›ƒ์„ ์œ„ํ•ด์„œ๋Š” ์„œ๋ฒ„๋Š” ํ•ด๋‹น ์‚ฌ์šฉ์ž์˜ ํ† ํฐ์„ ๋ธ”๋ž™๋ฆฌ์ŠคํŠธ์— ์ถ”๊ฐ€ํ•ด์•ผ ํ•œ๋‹ค. Redis๋Š” ์ด๋Ÿฌํ•œ ๋ธ”๋ž™๋ฆฌ์ŠคํŠธ๋ฅผ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ธฐ๋ฐ˜์˜ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ, ๋†’์€ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.Redis๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ์„ ๊ตฌํ˜„ํ•ด๋ณด์ž.  ์˜์กด์„ฑ ์ถ”๊ฐ€ & Redis ์„ค์ • build.gradle์— redis dependency๋ฅผ ์ถ”๊ฐ€ํ•ด์ฃผ์ž.implementation 'org.springframework.boot:spring-boot-starter-data-redis'  RedisRepositoryConfig.javaRedis ์„ค์ •ํ•˜..