We are using Apollo Gateway (NodeJS) and recently run into a problem with scaling up the gateway. When we issue a batch request with 4 separate queries (all 4 to the same downstream GQL server, using DGS) the request gets partially serialized, ie we don’t see all queries running concurrently. So the overall time taken for the batch request is not just the max time of all the individual queries. It’s more like the time it would take if 2 of the queries were to run in sequence.
For architectural reasons the 4 queries can’t be combined into a single query. We have to maintain them as separate queries.
What are some places to start looking to figure out why these queries are being run sequentially?
Thanks in advance,