@TomF then Modulu function and add partitionkey would be only reasonable option.
Otherwise if you reach a order range of 1000 you would have 1000 messages only be handled by same consumer until you reach 2000. So no distribution.
I look forward for queue partitioning which i heard solace works on.
I hope you can do some distribution without any need that publisher adds a partition key.
Maybe you can just configure that and then assign consumers to each partition. (similar to Kafka)