From d31756286820c53196f4984f7fda1bddd642b33c Mon Sep 17 00:00:00 2001 From: Michael Xiao Date: Mon, 3 Feb 2025 08:37:00 -0500 Subject: [PATCH] Cut nav into half (#3664) Co-authored-by: app-token-issuer-data-feeds[bot] <134377064+app-token-issuer-data-feeds[bot]@users.noreply.github.com> --- .changeset/nasty-owls-serve.md | 5 +++++ packages/sources/nav-consulting/src/config/index.ts | 4 ++-- packages/sources/nav-consulting/src/index.ts | 8 -------- packages/sources/nav-consulting/src/transport/reserve.ts | 6 +++++- 4 files changed, 12 insertions(+), 11 deletions(-) create mode 100644 .changeset/nasty-owls-serve.md diff --git a/.changeset/nasty-owls-serve.md b/.changeset/nasty-owls-serve.md new file mode 100644 index 0000000000..0316b29bc3 --- /dev/null +++ b/.changeset/nasty-owls-serve.md @@ -0,0 +1,5 @@ +--- +'@chainlink/nav-consulting-adapter': patch +--- + +Reduce rate limiter diff --git a/packages/sources/nav-consulting/src/config/index.ts b/packages/sources/nav-consulting/src/config/index.ts index f5cb74b902..6745694a02 100644 --- a/packages/sources/nav-consulting/src/config/index.ts +++ b/packages/sources/nav-consulting/src/config/index.ts @@ -12,12 +12,12 @@ export const config = new AdapterConfig( description: 'The amount of time the background execute should sleep before performing the next request', type: 'number', - default: 10_000, + default: 60_000, // one call per minute }, }, { envDefaultOverrides: { - CACHE_MAX_AGE: 300_000, // Due to API limit of 2 request per minute + CACHE_MAX_AGE: 600_000, // 10 minute cache }, }, ) diff --git a/packages/sources/nav-consulting/src/index.ts b/packages/sources/nav-consulting/src/index.ts index f25d4a9fe3..c497ca65c4 100644 --- a/packages/sources/nav-consulting/src/index.ts +++ b/packages/sources/nav-consulting/src/index.ts @@ -8,14 +8,6 @@ export const adapter = new Adapter({ name: 'NAV_CONSULTING', config, endpoints: [reserve], - rateLimiting: { - tiers: { - default: { - rateLimit1m: 4, - note: '60/min in total shared by 30 EA instance, each EA can do 2 per min per API. Each call hits 2 API', - }, - }, - }, }) export const server = (): Promise => expose(adapter) diff --git a/packages/sources/nav-consulting/src/transport/reserve.ts b/packages/sources/nav-consulting/src/transport/reserve.ts index 1aa27f3a3c..a01cfb9663 100644 --- a/packages/sources/nav-consulting/src/transport/reserve.ts +++ b/packages/sources/nav-consulting/src/transport/reserve.ts @@ -34,7 +34,11 @@ export class NavConsultingTransport extends SubscriptionTransport, entries: RequestParams[]) { await Promise.all(entries.map(async (param) => this.handleRequest(param))) - await sleep(context.adapterSettings.BACKGROUND_EXECUTE_MS) + if (entries.length == 0) { + await sleep(1_000) + } else { + await sleep(context.adapterSettings.BACKGROUND_EXECUTE_MS) + } } async handleRequest(param: RequestParams) {