0

I’m building a high-throughput minting system for NFTs on Polygon using a NestJS In normal mode, minting is sequential and stable. In burst mode, I need to mint ~10,000 NFTs at once (each mint is a contract mintVDT() call).

Current architecture

Backend: NestJS CQRS command handlers + SQS queue

Blockchain Layer: ethers.js v6 Wallet Layer: 50 custodial wallets, each funded with MATIC

Orchestration:

BurstOrchestrator distributes batches to wallets asynchronously.

Each wallet sends txs in parallel.

Gas price and gas limit are pre-estimated before burst start.

Problem

During bursts, gas price spikes dynamically because we push hundreds of txs nearly simultaneously. This creates two major issues:

Earlier transactions get dropped or stuck since their gas is underpriced after network congestion rises.

Wallet balances become insufficient mid-burst — they had enough gas initially, but higher baseFee causes failures (insufficient funds for intrinsic gas cost).

This leads to inconsistent throughput and failed mints.

1
  • each mint is a contract mintVDT() call change that and do multiple mints in a single transaction. It sounds like you are running a centralised system any case, so there is no point to have a facade and smoke and mirrors of decentralisation. Commented Nov 13 at 10:22

0

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.