Skip to content

Commit c5b7cf4

Browse files
[ISSUE #3466] Save and re-use this "Random" (#3784)
* [Enhancement] #3466 * Update TcpClient.java * Update TcpClient.java * Update TcpClient.java --------- Co-authored-by: mike_xwm <[email protected]>
1 parent b692368 commit c5b7cf4

File tree

1 file changed

+11
-3
lines changed
  • eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/common

1 file changed

+11
-3
lines changed

eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/common/TcpClient.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@
2424
import org.apache.eventmesh.common.protocol.tcp.UserAgent;
2525
import org.apache.eventmesh.common.protocol.tcp.codec.Codec;
2626

27-
2827
import java.io.Closeable;
2928
import java.net.InetSocketAddress;
30-
import java.util.Random;
29+
import java.security.NoSuchAlgorithmException;
30+
import java.security.SecureRandom;
3131
import java.util.concurrent.CompletableFuture;
3232
import java.util.concurrent.ConcurrentHashMap;
3333
import java.util.concurrent.ExecutionException;
@@ -60,7 +60,15 @@
6060
@Slf4j
6161
public abstract class TcpClient implements Closeable {
6262

63-
protected static final transient int CLIENTNO = (new Random()).nextInt(1000);
63+
protected static transient int CLIENTNO = 0;
64+
65+
static {
66+
try {
67+
CLIENTNO = SecureRandom.getInstanceStrong().nextInt(1000);
68+
} catch (NoSuchAlgorithmException e) {
69+
log.error("Failed to generate a random number!", e);
70+
}
71+
}
6472

6573
protected final transient ConcurrentHashMap<Object, RequestContext> contexts = new ConcurrentHashMap<>();
6674

0 commit comments

Comments
 (0)