So you are trying to use RabbitMQ as a temporary local queue that then moves messages "on shore" (I use
this term because there are ships in the sea that do this using RabbitMQ and the Shovel plugin)?
If so you probably want to use a lazy queue for this.
I'm not sure how the queue index file "processing" is relevant here since no index files can be removed until all messages
are consumed and acknowledged when the system supposedly comes online.
A lazy queue would have more predictable throughput with lower peaks and lower average and peak memory usage.
Such offline systems should be mindful of running their local node out of disk space. Message TTL or queue length limit
are two ways to control runaway growth.