From 95b0318f8e73370b459e761aa333cf8a9c0eb003 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Wed, 24 Jun 2026 19:04:36 +0200 Subject: [PATCH] Task/improve throughput of market data gathering queue by applying rate limit per data source (#7128) * Improve throughput by applying rate limit per data source * Update changelog --- CHANGELOG.md | 4 ++++ .../services/queues/data-gathering/data-gathering.module.ts | 1 + 2 files changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 04a4d896a..df2f6ba9e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Extended the asset profile details dialog of the admin control panel with a copy-to-clipboard button for the ISIN number - Extended the asset profile details dialog of the admin control panel with a copy-to-clipboard button for the symbol +### Changed + +- Improved the throughput of the market data gathering queue by applying the rate limit per data source + ### Fixed - Fixed an issue with hourly market data updates not refreshing prices for asset profiles with `MANUAL` data source diff --git a/apps/api/src/services/queues/data-gathering/data-gathering.module.ts b/apps/api/src/services/queues/data-gathering/data-gathering.module.ts index 5ac6c40c0..7258c034c 100644 --- a/apps/api/src/services/queues/data-gathering/data-gathering.module.ts +++ b/apps/api/src/services/queues/data-gathering/data-gathering.module.ts @@ -29,6 +29,7 @@ import { DataGatheringProcessor } from './data-gathering.processor'; BullModule.registerQueue({ limiter: { duration: ms('4 seconds'), + groupKey: 'dataSource', max: 1 }, name: DATA_GATHERING_QUEUE