Zaperjava:
Tenho um servidor Java que roda como servidor de uma aplicao web em Ruby on Rails .
A camada Ruby on Rails pega os dados via Web service do servidor Java .
O problema que tenho que retornar uma lista muito grande via web-service a partir da apliacao Java . Um relatorio gigante .
E essa lista via WEB-services esta demorando muito para ser carregada .
Qual melhor a solucao para este problema ?
Estava pensando em fazer um acesso direto da apliacao Ruby on Rails no banco , mas isso quebraria a arquitetura em camadas ( A parte de INFRA so comunica com Java ) .
em caso de nao dar para melhorar o link entre as duas aplicações, eu poderia surgir uma arquitetura para a comunicação entre sua aplicação java e a ruby…
não daria para você dividir esse relatório em “partes”, armazena-lo por um curto periodo de tempo e depois ao buscar esse relatório ir buscando cada parte de uma vez?
por exemplo, você acessa um web service, ele cria o relatorio e o armazena temporariamente (serializa ele em disco, no banco, sei la), retorna um nome para esse relatório (que possa ser identificado depois por esse nome) e a quantidade de partes que possue, depois você acessa outro web service pedindo pelo nome do relatório e a parte que você quer, uma por uma até acabar no ruby… depois você junta as partes em ruby e faz o que tiver que fazer (acredito que seja exibi-lo)…
fica muito ruim essa abordagem, no devido escopo fornecido pelo ?