我不确定使用Cassandra在nodejs中设置策略'DowngradingRetryPolicy。
policies : { loadBalancing : new cassandra.policies.loadBalancing.RoundRobinPolicy,
retry: new cassandra.policies.retry.IdempotenceAwareRetryPolicy(new cassandra.policies.retry.RetryPolicy())
} });
这是我设置IdempotenceAwareRetryPolicy
政策的方式,它按预期工作但如何使用nodejs在Cassandra中设置“DowngradingRetryPolicy
”政策
有关添加ruby实现的参考,
https://datastax.github.io/ruby-driver/features/retry_policies/downgrading_consistency/
谢谢,
哈利
答案 0 :(得分:3)
nodejs中没有降级一致性重试策略。这是一件好事,它在C *一致性保证的背景下没有多大意义。如果确实需要,人们总是可以编写自己的重试策略来执行此操作,但是默认情况下会在那里鼓励危险的设置,这可能会在意外/随机时间违反一致性预期。
但是,如果您正在考虑使用降级重试策略,请使用CL.ONE和正常策略。您必须假设所有查询都将在此处执行,否则您的应用程序将不安全。因此,不妨降低一致性级别的性能改进。
除非有充分理由,否则只需坚持使用包含DCAwareRoundRobinPolicy的默认TokenAwarePolicy即可。只是DCAwareRoundRobinPolicy可能最适合稳定。