View a markdown version of this page

Distribuzione delle letture alle repliche (modalità cluster disabilitata) - Amazon ElastiCache

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Distribuzione delle letture alle repliche (modalità cluster disabilitata)

Per i cluster disabilitati in modalità cluster con repliche, puoi utilizzare Lettuce's StaticMasterReplicaTopologyProvider con l'ReadFromimpostazione per indirizzare le scritture sul nodo primario e distribuire le letture tra le repliche. Ciò migliora la velocità di lettura scaricando le letture dal primario.

Utilizzate l'endpoint primario per le scritture e l'endpoint reader per le letture. L'endpoint di lettura bilancia automaticamente il carico delle connessioni tra le repliche disponibili.

// Primary endpoint for writes, reader endpoint for read distribution RedisURI primaryURI = RedisURI.Builder.redis("primary-endpoint.cache.amazonaws.com") .withPort(6379).withSsl(true).build(); RedisURI readerURI = RedisURI.Builder.redis("reader-endpoint.cache.amazonaws.com") .withPort(6379).withSsl(true).build(); RedisClient redisClient = RedisClient.create(clientResources); redisClient.setOptions(clientOptions); // Open a primary-replica connection using the StaticMasterReplicaTopologyProvider StatefulRedisMasterReplicaConnection<String, String> connection = MasterReplica.connect(redisClient, StringCodec.UTF8, Arrays.asList(primaryURI, readerURI)); // Direct reads to replicas, writes always go to the primary connection.setReadFrom(ReadFrom.REPLICA_PREFERRED);

Sono disponibili le seguenti opzioni: ReadFrom

  • REPLICA_PREFERRED— Legge dalle repliche quando disponibili e torna alla versione principale (scelta consigliata per la maggior parte dei casi d'uso).

  • REPLICA— Legge solo dalle repliche. Fallisce se non è disponibile alcuna replica.

  • PRIMARY_PREFERRED— Legge dal primario, torna alle repliche.

  • ANY_REPLICA— Legge da qualsiasi nodo di replica.

  • PRIMARY— Legge solo dal nodo primario. Da utilizzare quando è richiesta una forte coerenza.

Nota

I dati letti dalle repliche potrebbero essere leggermente obsoleti perché la replica è asincrona. Se la tua applicazione richiede una forte coerenza, usa o. ReadFrom.PRIMARY ReadFrom.PRIMARY_PREFERRED