Desempenho ruim em programa em Java com acesso a banco de dados remoto

9 respostas Resolvido
sqljavaprogramaçãomysql
V

Olá, desenvolvi um programa no qual ele usa um banco de dados, fazendo conexão remota, porém ele demora de 4 a 7 segundos para abrir uma tela que tenha consulta no banco de dados e em quanto não abrir ele fica “travado”, como posso fazer com que ele não demore tanto?

9 Respostas

J

Se a aplicação não estiver na mesma rede local, esquece acesso remoto, cria um web service.

J

Precisa ver o volume do que esta sendo requisitado pela rede externa.
A velocidade da rede.
E o programa Java.
Se tem muitas requisições simultâneas no banco e como esta o consumo da memoria, as grandes consultas lotam a memoria e fica lento o retorno.
Isso é facil testar, coloca o programa com o banco na rede interna.

Se permanecer demorando algo que considera fora do normal pode ser o programa ou mesmo o volume da consulta no banco de dados, as vezes é preciso paginar o retorno das grandes consultas.

V

Na rede interna ele flui bem, o problema é quando é hospedado mesmo.

J

Pois é, esse é o problema. Trabalhe com web service ou faz o negócio direito de uma vez, migrando tudo pra web.

J

Realmente, tem coisa errada ai.
Fica dificil assim , sem saber dos detalhes internos.

Mas, em quantas camadas funciona seu programa ?

  1. Tem um servidor e esta ligado com o banco de dados ?
  2. No Servidor tem pool de conexão ?
  3. São muitas conexões simultâneas ?
  4. Usa RMI ?
D

O de ser remoto não é o problema, talvez o problema está na sua programação, na quantidade de registros retornados, na infra-estrutura de rede e servidor externo, tudo isso somando pode trazer um prejuizo …

Tenho desenvolvimento assim e não é lerdo não, também Azure é bem rápido.

L

Voce consegue medir qto tempo é gasto para uma conexão ser estabelecida com esse banco de dados remoto?

V
Solucao aceita

Irei ver com outras hospedagens, pois entrei em contato com a que estou utilizando atualmente, e disseram que não é recomendada para essa utilização, mesmo assim obrigado!

J

Além desse problema, você expõe seu banco de dados diretamente na internet se não tiver controle do firewall desse servidor de hospedagem, para aceitar somente a rede da sua empresa. É uma grande falha de segurança.

Criado 13 de fevereiro de 2020
Ultima resposta 17 de fev. de 2020
Respostas 9
Participantes 5