NodeJS에서 설정하려면 Redis Replication 다음 High Availability 단계를 따르세요.
설치하다 Redis
Redis 먼저 서버에 설치해야 합니다. 공식 웹 사이트에서 다운로드하거나 apt 또는 brew와 같은 패키지 관리자를 사용할 수 있습니다.
구성 Redis _ Replication
구성 파일(redis.conf)을 열고 Redis 다음과 같이 변경합니다.
# Enable replication
replicaof <master_ip> <master_port>
<master_ip>
및를 마스터 서버 <master_port>
의 IP 주소 및 포트로 바꿉니다 Redis.
타르트 Redis 레플리카
Redis 마스터의 복제본 역할을 하는 여러 서버 또는 포트에서 여러 인스턴스를 시작합니다. 각 인스턴스에 대해 동일한 Redis 구성 파일을 사용하십시오.
Redis Client NodeJS에서 사용
NodeJS 애플리케이션에서 Redis "ioredis"와 같은 클라이언트 라이브러리를 사용하여 인스턴스에 연결합니다 Redis. 클라이언트는 적절한 서버에 대한 장애 조치 및 라우팅 요청을 자동으로 처리합니다.
Redis NodeJS에서 "ioredis" 로 연결하는 예:
const Redis = require('ioredis');
const redis = new Redis({
sentinels: [{ host: 'sentinel_ip', port: sentinel_port }],
name: 'mymaster',
role: 'slave',
});
'sentinel_ip'
및를 마스터를 모니터링하고 장애 조치를 처리하는 서버 sentinel_port
의 IP 주소 및 포트로 바꿉니다. Redis Sentinel
감시 장치 Redis Sentinel
Redis Sentinel Redis 인스턴스 모니터링 및 장애 조치 처리를 담당합니다. Redis Sentinel 별도의 서버에 설치 및 구성 하고 NodeJS 애플리케이션에 세부 정보를 추가합니다.
Redis Sentinel NodeJS에서 "ioredis" 로 연결하는 예:
const Redis = require('ioredis');
const sentinel = new Redis({
sentinels: [
{ host: 'sentinel1_ip', port: sentinel1_port },
{ host: 'sentinel2_ip', port: sentinel2_port },
// Add more Sentinel servers if needed
],
name: 'mymaster',
});
const redis = new Redis({
sentinels: [
{ host: 'sentinel1_ip', port: sentinel1_port },
{ host: 'sentinel2_ip', port: sentinel2_port },
// Add more Sentinel servers if needed
],
name: 'mymaster',
});
'sentinel1_ip'
, sentinel1_port
, , 등을 서버의 IP 주소 및 포트 'sentinel2_ip'
로 바꿉니다. sentinel2_port
Redis Sentinel
테스트 장애 조치 및 High Availability
Redis replication 및 테스트를 위해 high availability 마스터 서버의 오류를 시뮬레이션할 수 있습니다. Redis Sentinel 복제본 중 하나를 자동으로 새 마스터로 승격하고 장애 조치를 원활하게 처리해야 합니다.
이러한 단계를 따르면 NodeJS 애플리케이션에서 서버 오류가 발생하더라도 데이터 중복성과 지속적인 운영을 보장 Redis Replication 할 수 있습니다. High Availability