diff --git a/package.json b/package.json index 8657400..ac33388 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "rxjs": "^7.8.1", "socket.io-redis": "^6.1.1", "typescript": "4.5.4", + "undici": "^6.16.1", "winston": "^3.8.1", "ws": "^8.14.2" }, diff --git a/src/index.ts b/src/index.ts index 7b0ebe3..23f0dba 100644 --- a/src/index.ts +++ b/src/index.ts @@ -47,6 +47,13 @@ import { import FEATURE_FLAGS from './utils/featureFlags'; import { getDLOBProviderFromOrderSubscriber } from './dlobProvider'; import { RedisClient } from './utils/redisClient'; +import { setGlobalDispatcher, Agent } from 'undici'; + +setGlobalDispatcher( + new Agent({ + connections: 200, + }) +); require('dotenv').config(); diff --git a/src/publishers/dlobPublisher.ts b/src/publishers/dlobPublisher.ts index b33ce9e..587b1cb 100644 --- a/src/publishers/dlobPublisher.ts +++ b/src/publishers/dlobPublisher.ts @@ -42,6 +42,13 @@ import FEATURE_FLAGS from '../utils/featureFlags'; import { GeyserOrderSubscriber } from '../grpc/OrderSubscriberGRPC'; import express from 'express'; import { handleHealthCheck } from '../core/metrics'; +import { setGlobalDispatcher, Agent } from 'undici'; + +setGlobalDispatcher( + new Agent({ + connections: 200, + }) +); require('dotenv').config(); const stateCommitment: Commitment = 'confirmed'; diff --git a/src/publishers/priorityFeesPublisher.ts b/src/publishers/priorityFeesPublisher.ts index 2ebd136..1c2548a 100644 --- a/src/publishers/priorityFeesPublisher.ts +++ b/src/publishers/priorityFeesPublisher.ts @@ -16,6 +16,13 @@ import { sleep } from '../utils/utils'; import express from 'express'; // import { handleHealthCheck } from '../core/metrics'; import { RedisClient } from '../utils/redisClient'; +import { setGlobalDispatcher, Agent } from 'undici'; + +setGlobalDispatcher( + new Agent({ + connections: 200, + }) +); require('dotenv').config(); const stateCommitment: Commitment = 'confirmed'; diff --git a/src/publishers/tradesPublisher.ts b/src/publishers/tradesPublisher.ts index f6944b3..83b3b95 100644 --- a/src/publishers/tradesPublisher.ts +++ b/src/publishers/tradesPublisher.ts @@ -25,6 +25,13 @@ import { logger, setLogLevel } from '../utils/logger'; import { sleep } from '../utils/utils'; import { RedisClient } from '../utils/redisClient'; import { fromEvent, filter, map } from 'rxjs'; +import { setGlobalDispatcher, Agent } from 'undici'; + +setGlobalDispatcher( + new Agent({ + connections: 200, + }) +); require('dotenv').config(); const driftEnv = (process.env.ENV || 'devnet') as DriftEnv; diff --git a/yarn.lock b/yarn.lock index bbc5692..f7d1d7a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4339,6 +4339,11 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== +undici@^6.16.1: + version "6.16.1" + resolved "https://registry.yarnpkg.com/undici/-/undici-6.16.1.tgz#ff8f49c56e5a8629f92ad2ce00d4841b9619b19e" + integrity sha512-NeNiTT7ixpeiL1qOIU/xTVpHpVP0svmI6PwoCKaMGaI5AsHOaRdwqU/f7Fi9eyU4u03nd5U/BC8wmRMnS9nqoA== + unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"