Se as executo no backend de administração, a GUI mostra um tempo de execução muito rápido para a consulta do banco de dados em si, por exemplo, “Consulta concluída em 7,9 ms”.
Com base nas informações que você forneceu, eu diria que essas são consultas simples (rápidas de executar no SGBD), que retornam muitas linhas (lentas para desserializar no backend e transferir).
Se o desempenho atual estiver bloqueando seu caso de uso, existem muitas soluções diferentes que você pode explorar:
Diminuir a contagem de linhas por página, para que cada página seja mais rápida.
Criar um plugin que exponha as mesmas informações em um novo endpoint de API e seja mais inteligente sobre cache e formato de dados.
Consultar diretamente o banco de dados subjacente.
É o mesmo se eu tiver apenas uma única linha como resultado de uma consulta. Por exemplo, uma consulta que retorna um único inteiro, executada no painel do Explorador de Dados no backend de administração, leva 9 ms; executada de fora contra a API do Explorador de Dados via curl, leva 200 ms.
Eu gostaria muito de evitar isso, uso o Explorador de Dados porque foi sugerido nestes fóruns como uma boa maneira de obter informações do banco de dados e uma API que funciona bem para isso.
Minha consulta os usa para JOINs, mas não no conjunto de resultados. O SELECT tem apenas uma coluna, e essa é uma recém-calculada com um nome arbitrário.
Assumindo que esses são os números de ponto flutuante 3 casas à direita do código de status HTTP (por exemplo, ... 200 642 "-" **0.107 0.108** "system" ..., destacados com estrelas por mim), eles são cerca de 10 vezes a duração do tempo de consulta relatado no backend e praticamente exatamente a metade do tempo que leva para curl do meu cliente.