Nous voulons mettre en cache certaines entrées (c'est-à-dire en fonction du prédicat) dans le cache de requêtes en continu sur le client pour IMap. Mais nous voulons envoyer une mise à jour à CQC seulement après quelques secondes de retard (c'est-à-dire 30 secondes) même si les entrées reçoivent comme 100 mises à jour par seconde. Cela nous pouvons atteindre en réglant les secondes de retard à 30 secondes & coalescer à vrai.Cache de requête continue Hazelcast - Capacité de taille de lot et coalescence
QueryCacheConfig cqc = new QueryCacheConfig();
cqc.setDelaySeconds(30);
cqc.setCoalesce(true);
cqc.setBatchSize(30)
CQC s'adapte parfaitement bien au cas d'utilisation ci-dessus.
Mais nous remarquons que CQC ne reçoit pas de mises à jour après quelques secondes jusqu'à ce que la capacité du lot ne soit pas atteinte. Est-ce le comportement attendu? Nous avons pensé que CQC recevrait la dernière valeur mise à jour pour les entrées après que les secondes de retard ou la taille de lot aient atteint sa capacité.
Pouvez-vous également partager un reproducteur? A partir de mes essais, cela semble fonctionner. – mrck
@mrck - un bug a été rapporté https://github.com/hazelcast/hazelcast/issues/11331 – Hiten
Oui signalé mais le reproducteur ne semble pas utile car il montre finalement le comportement attendu. Si vous avez un autre reproducteur, ce serait génial de le voir. – mrck