Saya mencoba memahami pengganda default untuk strategi backoff eksponensial untuk metode Spring WebClient Retry.backoff. Dan ini bisa dikonfigurasi? Saya tidak dapat menemukan dokumentasi untuk ini.

https://projectreactor.io/docs/core/release/api/reactor/util/retry/Retry.html#backoff-long-Java.time.Duration-

Versi: reaktor-bersih 0.9.12.RELEASE

0
Tenzin Chemi 19 November 2020, 19:39

1 menjawab

Jawaban Terbaik

Metode utilitas Retry.backoff, seperti yang Anda katakan dengan benar, membuat strategi backoff eksponensial. Penggandanya adalah 2. Dengan kata lain, periode backoff berlipat ganda pada setiap percobaan ulang/kegagalan.

Anda dapat melihat ini beraksi di reaktor.util.retry.RetryBackoffSpec#generateCompanion.

"Pengganda", seperti yang Anda lihat, di-hardcode dan karenanya tidak dapat dikonfigurasi secara langsung. Untuk menggunakan sesuatu selain 2 Anda akan membuat implementasi Retry Anda sendiri dan secara khusus mengimplementasikan metode generateCompanion() untuk melakukan logika seperti yang dilakukan di RetryBackoffSpec tetapi menggunakan kustom Anda sendiri pengali.

0
rewolf 25 November 2020, 15:26