<\/p>\n
\ud604\ub300\uc758 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc740 \ube60\ub978 \uc751\ub2f5 \uc2dc\uac04\uacfc \ub192\uc740 \uac00\uc6a9\uc131\uc744 \uc694\uad6c\ud569\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc694\uad6c\ub97c \ucda9\uc871\ud558\uae30 \uc704\ud574 \ub9ce\uc740 \uac1c\ubc1c\uc790\ub4e4\uc774 \ub370\uc774\ud130 \uce90\uc2f1\uc744 \ud65c\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \ud2b9\ud788, Spring Boot\uc640 Redis Sentinel\uc744 \uc870\ud569\ud558\uba74 \uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1 \uc194\ub8e8\uc158\uc744 \uad6c\ucd95\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uae00\uc5d0\uc11c\ub294 Spring Boot\uc640 Redis Sentinel\uc744 \uc774\uc6a9\ud55c \uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1\uc758 \uac1c\ub150, \uad6c\ud604 \ubc29\ubc95, \uadf8\ub9ac\uace0 \uc2e4\uc81c \uc0ac\ub840\ub97c \ud1b5\ud574 \uc774 \uae30\uc220\uc758 \uc7a5\uc810\uc744 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n
\ub370\uc774\ud130 \uce90\uc2f1\uc740 \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0 \ub300\ud55c \uc694\uccad\uc744 \uc904\uc774\uace0, \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uc131\ub2a5\uc744 \ud5a5\uc0c1\uc2dc\ud0a4\ub294 \uc911\uc694\ud55c \uae30\uc220\uc785\ub2c8\ub2e4. \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub294 \uc77c\ubc18\uc801\uc73c\ub85c I\/O \uc791\uc5c5\uc774 \ub9ce\uace0, \uc774\ub7ec\ud55c \uc791\uc5c5\uc740 \uc2dc\uac04\uc774 \ub9ce\uc774 \uc18c\uc694\ub429\ub2c8\ub2e4. \ub530\ub77c\uc11c, \uc790\uc8fc \uc870\ud68c\ub418\ub294 \ub370\uc774\ud130\ub97c \uba54\ubaa8\ub9ac\uc5d0 \uc800\uc7a5\ud558\uc5ec \ube60\ub974\uac8c \uc811\uadfc\ud560 \uc218 \uc788\ub3c4\ub85d \ud558\ub294 \uac83\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.<\/p>\n
\uce90\uc2f1\uc744 \ud1b5\ud574 \uc5bb\uc744 \uc218 \uc788\ub294 \uc8fc\uc694 \uc774\uc810\uc740 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4:<\/p>\n
\uc774\ub7ec\ud55c \uc774\uc720\ub85c \ub370\uc774\ud130 \uce90\uc2f1\uc740 \ud604\ub300 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \ud544\uc218\uc801\uc778 \uc694\uc18c\ub85c \uc790\ub9ac \uc7a1\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
Spring Boot\ub294 Java \uae30\ubc18\uc758 \ud504\ub808\uc784\uc6cc\ud06c\ub85c, \ube60\ub974\uace0 \uc27d\uac8c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uac1c\ubc1c\ud560 \uc218 \uc788\ub3c4\ub85d \ub3c4\uc640\uc90d\ub2c8\ub2e4. Spring Boot\ub294 \ub2e4\uc591\ud55c \uc2a4\ud0c0\ud130 \ud328\ud0a4\uc9c0\ub97c \uc81c\uacf5\ud558\uc5ec, \ud544\uc694\ud55c \uae30\ub2a5\uc744 \uac04\ud3b8\ud558\uac8c \ucd94\uac00\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. Redis\ub294 \uc778\uba54\ubaa8\ub9ac \ub370\uc774\ud130 \uad6c\uc870 \uc800\uc7a5\uc18c\ub85c, \ube60\ub978 \uc18d\ub3c4\uc640 \ub2e4\uc591\ud55c \ub370\uc774\ud130 \uad6c\uc870\ub97c \uc9c0\uc6d0\ud569\ub2c8\ub2e4. Redis\ub294 \uce90\uc2f1, \uba54\uc2dc\uc9c0 \ube0c\ub85c\ucee4, \uc138\uc158 \uc800\uc7a5\uc18c \ub4f1 \ub2e4\uc591\ud55c \uc6a9\ub3c4\ub85c \uc0ac\uc6a9\ub429\ub2c8\ub2e4.<\/p>\n
Redis Sentinel\uc740 Redis\uc758 \uace0\uac00\uc6a9\uc131\uc744 \ubcf4\uc7a5\ud558\uae30 \uc704\ud55c \ub3c4\uad6c\uc785\ub2c8\ub2e4. Sentinel\uc740 Redis \ub9c8\uc2a4\ud130-\uc2ac\ub808\uc774\ube0c \uad6c\uc870\uc5d0\uc11c \ub9c8\uc2a4\ud130 \ub178\ub4dc\uac00 \ub2e4\uc6b4\ub418\uc5c8\uc744 \ub54c \uc790\ub3d9\uc73c\ub85c \uc2ac\ub808\uc774\ube0c \ub178\ub4dc\ub97c \ub9c8\uc2a4\ud130\ub85c \uc2b9\uaca9\uc2dc\ud0a4\ub294 \uae30\ub2a5\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4. \uc774\ub97c \ud1b5\ud574 \uc2dc\uc2a4\ud15c\uc758 \uac00\uc6a9\uc131\uc744 \ub192\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
Spring Boot\uc5d0\uc11c Redis\ub97c \uc0ac\uc6a9\ud558\uae30 \uc704\ud574\uc11c\ub294 \uba3c\uc800 \uc758\uc874\uc131\uc744 \ucd94\uac00\ud574\uc57c \ud569\ub2c8\ub2e4. Maven\uc744 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0, \ub2e4\uc74c\uacfc \uac19\uc740 \uc758\uc874\uc131\uc744 pom.xml\uc5d0 \ucd94\uac00\ud569\ub2c8\ub2e4:<\/p>\n
\n\n org.springframework.boot\n spring-boot-starter-data-redis\n\n\n redis.clients\n jedis\n\n<\/code><\/pre>\n\uc774\uc81c Redis\uc640\uc758 \uc5f0\uacb0\uc744 \uc124\uc815\ud574\uc57c \ud569\ub2c8\ub2e4. application.properties \ud30c\uc77c\uc5d0 Redis \uc11c\ubc84\uc758 \ud638\uc2a4\ud2b8\uc640 \ud3ec\ud2b8\ub97c \uc124\uc815\ud569\ub2c8\ub2e4:<\/p>\n
\nspring.redis.host=localhost\nspring.redis.port=6379\n<\/code><\/pre>\n\uc774\uc81c RedisTemplate\uc744 \uc0ac\uc6a9\ud558\uc5ec Redis\uc5d0 \ub370\uc774\ud130\ub97c \uc800\uc7a5\ud558\uace0 \uc870\ud68c\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c\uc740 \uac04\ub2e8\ud55c \uc608\uc81c\uc785\ub2c8\ub2e4:<\/p>\n
\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.data.redis.core.RedisTemplate;\nimport org.springframework.stereotype.Service;\n\n@Service\npublic class CacheService {\n @Autowired\n private RedisTemplate redisTemplate;\n\n public void save(String key, Object value) {\n redisTemplate.opsForValue().set(key, value);\n }\n\n public Object get(String key) {\n return redisTemplate.opsForValue().get(key);\n }\n}\n<\/code><\/pre>\n\uc704\uc758 \uc608\uc81c\uc5d0\uc11c CacheService \ud074\ub798\uc2a4\ub294 Redis\uc5d0 \ub370\uc774\ud130\ub97c \uc800\uc7a5\ud558\uace0 \uc870\ud68c\ud558\ub294 \uba54\uc11c\ub4dc\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4. \uc774\uc81c \uc774 \uc11c\ube44\uc2a4\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \uce90\uc2f1\uc744 \uad6c\ud604\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
4. Redis Sentinel \uc124\uc815\ud558\uae30<\/h2>\n
Redis Sentinel\uc744 \uc124\uc815\ud558\uae30 \uc704\ud574\uc11c\ub294 \uc5ec\ub7ec \uac1c\uc758 Redis \uc778\uc2a4\ud134\uc2a4\ub97c \uad6c\uc131\ud574\uc57c \ud569\ub2c8\ub2e4. \uc77c\ubc18\uc801\uc73c\ub85c \ub9c8\uc2a4\ud130\uc640 \uc2ac\ub808\uc774\ube0c \uad6c\uc870\ub85c \uc124\uc815\ud558\uba70, Sentinel\uc740 \uc774\ub4e4\uc744 \ubaa8\ub2c8\ud130\ub9c1\ud569\ub2c8\ub2e4. \ub2e4\uc74c\uc740 Sentinel \uc124\uc815 \ud30c\uc77c\uc758 \uc608\uc785\ub2c8\ub2e4:<\/p>\n
\nsentinel monitor mymaster 127.0.0.1 6379 2\nsentinel down-after-milliseconds mymaster 5000\nsentinel failover-timeout mymaster 60000\nsentinel parallel-syncs mymaster 1\n<\/code><\/pre>\n\uc704\uc758 \uc124\uc815\uc5d0\uc11c ‘mymaster’\ub294 \ub9c8\uc2a4\ud130 \ub178\ub4dc\uc758 \uc774\ub984\uc774\uba70, Sentinel\uc740 \uc774 \ub178\ub4dc\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud569\ub2c8\ub2e4. ‘down-after-milliseconds’\ub294 \ub9c8\uc2a4\ud130 \ub178\ub4dc\uac00 \ub2e4\uc6b4\ub41c \uac83\uc73c\ub85c \uac04\uc8fc\ub418\ub294 \uc2dc\uac04\uc744 \uc124\uc815\ud569\ub2c8\ub2e4.<\/p>\n
Sentinel\uc744 \uc2e4\ud589\ud558\uae30 \uc704\ud574\uc11c\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \uba85\ub839\uc5b4\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4:<\/p>\n
\nredis-sentinel \/path\/to\/sentinel.conf\n<\/code><\/pre>\n\uc774\uc81c Sentinel\uc774 \ub9c8\uc2a4\ud130 \ub178\ub4dc\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud558\uace0, \uc7a5\uc560 \ubc1c\uc0dd \uc2dc \uc790\ub3d9\uc73c\ub85c \uc2ac\ub808\uc774\ube0c \ub178\ub4dc\ub97c \ub9c8\uc2a4\ud130\ub85c \uc2b9\uaca9\uc2dc\ud0ac \uc900\ube44\uac00 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n
5. \uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1 \uad6c\ud604\ud558\uae30<\/h2>\n
\uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1\uc744 \uad6c\ud604\ud558\uae30 \uc704\ud574\uc11c\ub294 Spring Boot \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c Redis Sentinel\uc744 \uc0ac\uc6a9\ud558\uc5ec \uce90\uc2dc\ub97c \uad00\ub9ac\ud574\uc57c \ud569\ub2c8\ub2e4. \uc774\ub97c \uc704\ud574 Spring Data Redis\uc758 Sentinel \uc9c0\uc6d0\uc744 \ud65c\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
application.properties \ud30c\uc77c\uc5d0 Sentinel \uc124\uc815\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4:<\/p>\n
\nspring.redis.sentinel.master=mymaster\nspring.redis.sentinel.nodes=127.0.0.1:26379,127.0.0.1:26380\n<\/code><\/pre>\n\uc774\uc81c RedisConnectionFactory\ub97c \uc124\uc815\ud558\uc5ec Sentinel\uc744 \ud1b5\ud574 Redis\uc5d0 \uc5f0\uacb0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n
\nimport org.springframework.context.annotation.Bean;\nimport org.springframework.context.annotation.Configuration;\nimport org.springframework.data.redis.connection.RedisSentinelConfiguration;\nimport org.springframework.data.redis.connection.RedisConnectionFactory;\nimport org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;\n\n@Configuration\npublic class RedisConfig {\n @Bean\n public RedisConnectionFactory redisConnectionFactory() {\n RedisSentinelConfiguration sentinelConfig = new RedisSentinelConfiguration()\n .master(\"mymaster\")\n .sentinel(\"127.0.0.1\", 26379)\n .sentinel(\"127.0.0.1\", 26380);\n return new LettuceConnectionFactory(sentinelConfig);\n }\n}\n<\/code><\/pre>\n\uc774\uc81c RedisTemplate\uc744 \uc0ac\uc6a9\ud558\uc5ec \uace0\uac00\uc6a9\uc131 \uce90\uc2dc\ub97c \uad6c\ud604\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc7a5\uc560 \ubc1c\uc0dd \uc2dc\uc5d0\ub3c4 \uc790\ub3d9\uc73c\ub85c \uc2ac\ub808\uc774\ube0c \ub178\ub4dc\ub85c \uc804\ud658\ub418\ubbc0\ub85c, \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uac00\uc6a9\uc131\uc774 \ub192\uc544\uc9d1\ub2c8\ub2e4.<\/p>\n
6. \uc131\ub2a5 \ucd5c\uc801\ud654 \ubc0f \ubaa8\ub2c8\ud130\ub9c1<\/h2>\n
\uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1\uc744 \uad6c\ud604\ud55c \ud6c4\uc5d0\ub294 \uc131\ub2a5 \ucd5c\uc801\ud654\uc640 \ubaa8\ub2c8\ud130\ub9c1\uc774 \uc911\uc694\ud569\ub2c8\ub2e4. Redis\ub294 \ub2e4\uc591\ud55c \uc131\ub2a5 \ubaa8\ub2c8\ud130\ub9c1 \ub3c4\uad6c\ub97c \uc81c\uacf5\ud558\uba70, \uc774\ub97c \ud1b5\ud574 \uc2dc\uc2a4\ud15c\uc758 \uc0c1\ud0dc\ub97c \uc2e4\uc2dc\uac04\uc73c\ub85c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
Redis\uc758 \uc131\ub2a5\uc744 \ubaa8\ub2c8\ud130\ub9c1\ud558\uae30 \uc704\ud574 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ub3c4\uad6c\ub294 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4:<\/p>\n
\n- Redis CLI: \uae30\ubcf8\uc801\uc778 \uba85\ub839\uc5b4\ub97c \ud1b5\ud574 Redis\uc758 \uc0c1\ud0dc\ub97c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n
- Redis Monitor: \uc2e4\uc2dc\uac04\uc73c\ub85c Redis\uc758 \uba85\ub839\uc5b4 \uc2e4\ud589 \uc0c1\ud0dc\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n
- Grafana\uc640 Prometheus: Redis\uc758 \uba54\ud2b8\ub9ad\uc744 \uc2dc\uac01\ud654\ud558\uc5ec \ubaa8\ub2c8\ud130\ub9c1\ud560 \uc218 \uc788\ub294 \uac15\ub825\ud55c \ub3c4\uad6c\uc785\ub2c8\ub2e4.<\/li>\n<\/ul>\n
\uc131\ub2a5 \ucd5c\uc801\ud654\ub97c \uc704\ud574 \ub2e4\uc74c\uacfc \uac19\uc740 \ubc29\ubc95\uc744 \uace0\ub824\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n
\n- \uc801\uc808\ud55c TTL \uc124\uc815: \uce90\uc2dc\ub41c \ub370\uc774\ud130\uc758 \uc0dd\uba85 \uc8fc\uae30\ub97c \uc124\uc815\ud558\uc5ec \ubd88\ud544\uc694\ud55c \uba54\ubaa8\ub9ac \uc0ac\uc6a9\uc744 \uc904\uc785\ub2c8\ub2e4.<\/li>\n
- \ub370\uc774\ud130 \uad6c\uc870 \ucd5c\uc801\ud654: Redis\ub294 \ub2e4\uc591\ud55c \ub370\uc774\ud130 \uad6c\uc870\ub97c \uc9c0\uc6d0\ud558\ubbc0\ub85c, \uc801\uc808\ud55c \uad6c\uc870\ub97c \uc120\ud0dd\ud558\uc5ec \uc131\ub2a5\uc744 \ud5a5\uc0c1\uc2dc\ud0ac \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n
- \ud074\ub7ec\uc2a4\ud130\ub9c1: Redis \ud074\ub7ec\uc2a4\ud130\ub97c \uad6c\uc131\ud558\uc5ec \ub370\uc774\ud130 \ubd84\uc0b0 \uc800\uc7a5 \ubc0f \ubd80\ud558 \ubd84\uc0b0\uc744 \ud1b5\ud574 \uc131\ub2a5\uc744 \uac1c\uc120\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n
7. \uc2e4\uc81c \uc0ac\ub840 \uc5f0\uad6c<\/h2>\n
\uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1\uc744 \uad6c\ud604\ud55c \uc2e4\uc81c \uc0ac\ub840\ub85c\ub294 \ub300\uaddc\ubaa8 \uc804\uc790\uc0c1\uac70\ub798 \ud50c\ub7ab\ud3fc\uc774 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \ud50c\ub7ab\ud3fc\uc740 \uc0ac\uc6a9\uc790 \uc694\uccad\uc774 \uae09\uc99d\ud558\ub294 \uc0c1\ud669\uc5d0\uc11c\ub3c4 \uc548\uc815\uc801\uc778 \uc11c\ube44\uc2a4\ub97c \uc81c\uacf5\ud558\uae30 \uc704\ud574 Spring Boot\uc640 Redis Sentinel\uc744 \ub3c4\uc785\ud588\uc2b5\ub2c8\ub2e4.<\/p>\n
\uc774 \ud50c\ub7ab\ud3fc\uc740 \ub2e4\uc74c\uacfc \uac19\uc740 \ubc29\uc2dd\uc73c\ub85c \uace0\uac00\uc6a9\uc131 \uce90\uc2f1\uc744 \uad6c\ud604\ud588\uc2b5\ub2c8\ub2e4:<\/p>\n
\n- \uc8fc\uc694 \uc0c1\ud488 \uc815\ubcf4\uc640 \uc0ac\uc6a9\uc790 \uc138\uc158 \ub370\uc774\ud130\ub97c Redis\uc5d0 \uce90\uc2dc\ud558\uc5ec \ube60\ub978 \uc751\ub2f5 \uc2dc\uac04\uc744 \ud655\ubcf4\ud588\uc2b5\ub2c8\ub2e4.<\/li>\n
- Redis Sentinel\uc744 \ud1b5\ud574 \ub9c8\uc2a4\ud130 \ub178\ub4dc \uc7a5\uc560 \ubc1c\uc0dd \uc2dc \uc790\ub3d9\uc73c\ub85c \uc2ac\ub808\uc774\ube0c \ub178\ub4dc\ub85c \uc804\ud658\ud558\uc5ec \uc11c\ube44\uc2a4 \uc911\ub2e8 \uc5c6\uc774 \uc6b4\uc601\ud560 \uc218 \uc788\uc5c8\uc2b5\ub2c8\ub2e4.<\/li>\n
- \ubaa8\ub2c8\ud130\ub9c1 \ub3c4\uad6c\ub97c \ud1b5\ud574 Redis\uc758 \uc131\ub2a5\uc744 \uc2e4\uc2dc\uac04\uc73c\ub85c \ud655\uc778\ud558\uace0, \ud544\uc694 \uc2dc \ucd5c\uc801\ud654\ub97c \uc9c4\ud589\ud588\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n
\uacb0\uacfc\uc801\uc73c\ub85c \uc774 \ud50c\ub7ab\ud3fc\uc740 \uc0ac\uc6a9\uc790 \uacbd\ud5d8\uc744 \ud06c\uac8c \ud5a5\uc0c1\uc2dc\ucf30\uc73c\uba70, \uc11c\ubc84 \ube44\uc6a9\ub3c4 \uc808\uac10\ud560 \uc218 \uc788\uc5c8\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc0ac\ub840\ub294 Spring Boot\uc640 Redis Sentinel\uc744 \ud65c\uc6a9\ud55c \uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1\uc758 \ud6a8\uacfc\ub97c \uc798 \ubcf4\uc5ec\uc90d\ub2c8\ub2e4.<\/p>\n
8. \uacb0\ub860 \ubc0f \ud5a5\ud6c4 \uc804\ub9dd<\/h2>\n
Spring Boot\uc640 Redis Sentinel\uc744 \uc774\uc6a9\ud55c \uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1\uc740 \ud604\ub300 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \ud544\uc218\uc801\uc778 \uae30\uc220\uc785\ub2c8\ub2e4. \uc774 \uc870\ud569\uc740 \ube60\ub978 \uc751\ub2f5 \uc2dc\uac04\uacfc \ub192\uc740 \uac00\uc6a9\uc131\uc744 \uc81c\uacf5\ud558\uc5ec \uc0ac\uc6a9\uc790 \uacbd\ud5d8\uc744 \ud5a5\uc0c1\uc2dc\ud0a4\uace0, \uc11c\ubc84 \ube44\uc6a9\uc744 \uc808\uac10\ud558\ub294 \ub370 \uae30\uc5ec\ud569\ub2c8\ub2e4.<\/p>\n
\uc55e\uc73c\ub85c\ub3c4 \ub370\uc774\ud130 \uce90\uc2f1 \uae30\uc220\uc740 \ub354\uc6b1 \ubc1c\uc804\ud560 \uac83\uc73c\ub85c \uc608\uc0c1\ub429\ub2c8\ub2e4. \ud2b9\ud788, \ud074\ub77c\uc6b0\ub4dc \ud658\uacbd\uc5d0\uc11c\uc758 \uce90\uc2f1 \uc194\ub8e8\uc158\uc774\ub098 \uba38\uc2e0\ub7ec\ub2dd \uae30\ubc18\uc758 \uce90\uc2f1 \uc804\ub7b5 \ub4f1\uc774 \uc8fc\ubaa9\ubc1b\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uae30\uc220\ub4e4\uc740 \ub354\uc6b1 \ud6a8\uc728\uc801\uc774\uace0 \uc2a4\ub9c8\ud2b8\ud55c \ub370\uc774\ud130 \uad00\ub9ac\ub97c \uac00\ub2a5\ud558\uac8c \ud560 \uac83\uc785\ub2c8\ub2e4.<\/p>\n
\uacb0\ub860\uc801\uc73c\ub85c, Spring Boot\uc640 Redis Sentinel\uc744 \ud65c\uc6a9\ud55c \uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1\uc740 \uac1c\ubc1c\uc790\ub4e4\uc5d0\uac8c \uac15\ub825\ud55c \ub3c4\uad6c\uac00 \ub420 \uac83\uc774\uba70, \uc774\ub97c \ud1b5\ud574 \ub354\uc6b1 \uc548\uc815\uc801\uc774\uace0 \ube60\ub978 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uad6c\ucd95\ud560 \uc218 \uc788\uc744 \uac83\uc785\ub2c8\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"
\ubaa9\ucc28 Spring Boot\uc640 Redis Sentinel\uc744 \uc774\uc6a9\ud55c \uace0\uac00\uc6a9\uc131 \ub370\uc774\ud130 \uce90\uc2f1 1. \ub370\uc774\ud130 \uce90\uc2f1\uc758 \ud544\uc694\uc131 2. Spring […]<\/p>\n","protected":false},"author":1,"featured_media":48566,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1957],"tags":[2058,2104,2156],"class_list":["post-51558","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-development","tag-application","tag-data","tag-spring"],"acf":[],"_links":{"self":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/posts\/51558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/comments?post=51558"}],"version-history":[{"count":0,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/posts\/51558\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/media\/48566"}],"wp:attachment":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/media?parent=51558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/categories?post=51558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/tags?post=51558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}