Skip to content

Commit 43f9d5d

Browse files
authored
Merge pull request tronprotocol#1149 from tronprotocol/modify-net-connect
optimization the net connect
2 parents a364bf6 + 6c9dd76 commit 43f9d5d

4 files changed

Lines changed: 24 additions & 5 deletions

File tree

src/main/java/org/tron/common/overlay/server/HandshakeHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public class HandshakeHandler extends ByteToMessageDecoder {
5757
private Manager manager;
5858

5959
private P2pMessageFactory messageFactory = new P2pMessageFactory();
60-
60+
6161
@Autowired
6262
private SyncPool syncPool;
6363

src/main/java/org/tron/common/overlay/server/SyncPool.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,16 +51,16 @@ public class SyncPool {
5151

5252
public static final Logger logger = LoggerFactory.getLogger("SyncPool");
5353

54-
private static final double factor = 0.4;
55-
private static final double activeFactor = 0.2;
54+
private double factor = Args.getInstance().getConnectFactor();
55+
private double activeFactor = Args.getInstance().getActiveConnectFactor();
5656

5757
private final List<PeerConnection> activePeers = Collections
5858
.synchronizedList(new ArrayList<PeerConnection>());
5959
private final AtomicInteger passivePeersCount = new AtomicInteger(0);
6060
private final AtomicInteger activePeersCount = new AtomicInteger(0);
6161

6262
private Cache<NodeHandler, Long> nodeHandlerCache = CacheBuilder.newBuilder()
63-
.maximumSize(1000).expireAfterWrite(120, TimeUnit.SECONDS).recordStats().build();
63+
.maximumSize(1000).expireAfterWrite(180, TimeUnit.SECONDS).recordStats().build();
6464

6565
@Autowired
6666
private NodeManager nodeManager;
@@ -101,7 +101,7 @@ public void init(PeerConnectionDelegate peerDel) {
101101
} catch (Throwable t) {
102102
logger.error("Exception in sync worker", t);
103103
}
104-
}, 30, 16, TimeUnit.SECONDS);
104+
}, 30, 3600, TimeUnit.MILLISECONDS);
105105

106106
logExecutor.scheduleWithFixedDelay(() -> {
107107
try {

src/main/java/org/tron/core/config/args/Args.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,14 @@ public class Args {
257257
@Setter
258258
private List<String> backupMembers;
259259

260+
@Getter
261+
@Setter
262+
private double connectFactor;
263+
264+
@Getter
265+
@Setter
266+
private double activeConnectFactor;
267+
260268
public static void clearParam() {
261269
INSTANCE.outputDirectory = "output-directory";
262270
INSTANCE.help = false;
@@ -305,6 +313,8 @@ public static void clearParam() {
305313
INSTANCE.solidityNode = false;
306314
INSTANCE.trustNodeAddr = "";
307315
INSTANCE.walletExtensionApi = false;
316+
INSTANCE.connectFactor = 0.3;
317+
INSTANCE.activeConnectFactor = 0.1;
308318
}
309319

310320
/**
@@ -511,6 +521,12 @@ public static void setParam(final String[] args, final String confFileName) {
511521
INSTANCE.walletExtensionApi =
512522
config.hasPath("node.walletExtensionApi") && config.getBoolean("node.walletExtensionApi");
513523

524+
INSTANCE.connectFactor =
525+
config.hasPath("node.connectFactor") ? config.getDouble("node.connectFactor") : 0.3;
526+
527+
INSTANCE.activeConnectFactor = config.hasPath("node.activeConnectFactor") ?
528+
config.getDouble("node.activeConnectFactor") : 0.1;
529+
514530
initBackupProperty(config);
515531

516532
logConfig();

src/main/resources/config.conf

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,9 @@ node {
8181
# Number of validate sign thread, default availableProcessors / 2
8282
# validateSignThreadNum = 16
8383

84+
connectFactor = 0.3
85+
activeConnectFactor = 0.1
86+
8487
maxActiveNodes = 30
8588

8689
maxActiveNodesWithSameIp = 2

0 commit comments

Comments
 (0)