diff --git a/skywalking-api/src/main/java/com/ai/cloud/skywalking/sender/DataSenderFactoryWithBalance.java b/skywalking-api/src/main/java/com/ai/cloud/skywalking/sender/DataSenderFactoryWithBalance.java index d37ffe44090279d840ba50f7eaaee597958dc041..5a2662c2c8ef1602a04633fa28e3053c8db79905 100644 --- a/skywalking-api/src/main/java/com/ai/cloud/skywalking/sender/DataSenderFactoryWithBalance.java +++ b/skywalking-api/src/main/java/com/ai/cloud/skywalking/sender/DataSenderFactoryWithBalance.java @@ -197,8 +197,14 @@ public class DataSenderFactoryWithBalance { private static DataSender findReadySender() { DataSender result = null; - int index = ThreadLocalRandom.current().nextInt(0, - unusedServerAddresses.size()); + + int index = 0; + + if (unusedServerAddresses.size() > 1){ + index = ThreadLocalRandom.current().nextInt(0, + unusedServerAddresses.size()); + } + for (int i = 0; i < unusedServerAddresses.size(); i++, index++) { if (index == unusedServerAddresses.size()) {