PROJETO .NET VPS OU CLOUD

 Tópico anterior Próximo tópico Novo tópico

PROJETO .NET VPS OU CLOUD

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#491715 - 06/12/2019 10:48:22

DELIMA
PORTO ALGRE
Cadast. em:Outubro/2019


Bom dia!
Gostaria da opinião de todos, os mais experientes, quem trabalha com alguma dessas tecnologias, todos que possam trazer alguma informação sobre o assunto.
Meu cenário hoje é o seguinte:
Tenho um projeto em Vb.Net windows form com cadastro de clientes, produtos, orçamentos e ordem de serviços.
Esse projeto está em produção mas com o banco local em 1 cliente, sem causar problemas....tempo de resposta rápido, caminho feliz.
Testando em UM servidor pago. No plano básico de hospedagem de site onde utilizo apenas o serviço de banco, usando o MySql, o desempenho mudou completamente. O sistema ficou lento a cada requisição no banco.
Lendo sobre o assunto, pesquisando, comecei a dar mais atenção as tecnologias VPS, CLOUD SERVER e SERVIDORES DEDICADOS.
Alguém utiliza alguma dessas tecnologias? E principalmente o desempenho pra aplicação desktop, se dependendo da tecnologia escolhida posso ter um ganho em desempenho do meu banco em nuvem como tenho nele físico.
Qualquer informação é válida!

Obrigado a atenção de todos!






#491717 - 06/12/2019 12:09:08

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Você não está usando uma WebAPI, certo?

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#491719 - 06/12/2019 12:12:28

DELIMA
PORTO ALGRE
Cadast. em:Outubro/2019


Última edição em 06/12/2019 12:14:45 por DELIMA

Citação:
:
Você não está usando uma WebAPI, certo?

Não estou usando WebAPI, apenas banco Mysql conectando direto no windows form direto.
Acha que ai pode estar o inicio do meu problema ao usar o acesso direto a dados? eu não mudei nada na estrutura do programa apenas mudou a string de conexão pro banco remoto.




#491720 - 06/12/2019 12:49:43

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Citação:
:
:
Você não está usando uma WebAPI, certo?
Não estou usando WebAPI, apenas banco Mysql conectando direto no windows form direto.
Acha que ai pode estar o inicio do meu problema ao usar o acesso direto a dados? eu não mudei nada na estrutura do programa apenas mudou a string de conexão pro banco remoto.


tenho a mesma duvida porem tambem faço sites em armazeno em vps e meu sistema deslktop windows forms tem a opção de em rede externa fica bem lento e nao uso webapi queria saber se tem como deixar rapido



#491723 - 06/12/2019 14:48:27

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Citação:
:
:
Você não está usando uma WebAPI, certo?
Não estou usando WebAPI, apenas banco Mysql conectando direto no windows form direto.
Acha que ai pode estar o inicio do meu problema ao usar o acesso direto a dados? eu não mudei nada na estrutura do programa apenas mudou a string de conexão pro banco remoto.

O ideal, seria pesquisar e ler sobre as diferenças entre uma conexão usando um driver ODBC ou OleDb ou qualquer outro driver nativo. Apesar de funcionar, não é pra isso que eles foram feitos.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#491726 - 06/12/2019 16:32:11

DELIMA
PORTO ALGRE
Cadast. em:Outubro/2019


Citação:
:
:
:
Você não está usando uma WebAPI, certo?
Não estou usando WebAPI, apenas banco Mysql conectando direto no windows form direto.
Acha que ai pode estar o inicio do meu problema ao usar o acesso direto a dados? eu não mudei nada na estrutura do programa apenas mudou a string de conexão pro banco remoto.

O ideal, seria pesquisar e ler sobre as diferenças entre uma conexão usando um driver ODBC ou OleDb ou qualquer outro driver nativo. Apesar de funcionar, não é pra isso que eles foram feitos.


KERPLUNK, usando o drive de conexão correto posso ter um ganho em performance nas requisições ao banco, mas isso por si só já daria diferença suficiente que eu não precisasse utilizar nenhum outro tipo de serviço? Você utiliza algum serviço em nuvem e sistema desktop conectando ao banco?



#491728 - 06/12/2019 16:40:40

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Acho que não me expressei bem. Quando você conecta ao banco por algum driver desses(a conexão normal, connectionstring e tal), você está usando sockets. Os pacotes formados pelo driver são GIGANTESCOS, eles contêm uma gama muito grande de dados que não são o que você precisa, além de na maioria das vezes, esses pacotes tem menor prioridade para trafegar na rede. Essa é uma das razões de ser muito lento, tem várias outras mais técnicas que não vale à pena aqui. Com uma WebAPI, os dados são texto pura e simplesmente. O que trafega são basicamente dados mesmo, muito mais sucinto e trafegando pela porta 80 que é de longe a preferencial para tráfego de dados. Uma vez os dados chegando no servidor(na WebAPI), aí sim a conexão é feita ao banco no modo tradicional, mas nesse caso, o banco está localmente em relação à sua WebAPI, ou seja, as duas estão na mesma máquina(ou farm, ou LAN ou seja lá o que for, mas local). Não tente insistir na mesma coisa, se quer se atualizar e ter sua aplicação mais moderna e eficiente, você vai ter que investir tempo em aprender as coisas novas.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#491729 - 06/12/2019 16:56:32

DELIMA
PORTO ALGRE
Cadast. em:Outubro/2019


Show KERPLUNK!
Comecei a estender a ideia pra esse lado, mudança da aplicação.




#491730 - 06/12/2019 16:59:52

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Da uma olhada

https://codefc.com.br/criando-uma-webapi-net-core-vs-code-mysql/



#491731 - 06/12/2019 17:00:47

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Você pode continuar usando uma aplicação desktop na boa, mas o modo como busca e grava dados vai mudar. Sinceramente sugiro que ao criar sua aplicação, use endpoints OData e crie um SDK(tem ferramentas que fazem isso automaticamente baseado no metadata gerado pelo OData). Assim, você fica livre para ter consultas dinâmicas, ditadas pelo client(sua aplicação desktop) e não precisar criar dezenas de endpoints REST tradicionais. A parte de CRUD dos dados fica do mesmo jeito, o OData só vai facilitar as consultas. É bem fácil de implementar, mas é quase imprescindível usar o Entity Framework. Digo quase porque é possível fazer usando o Dapper, é possível mas MUITO trabalhoso.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#491735 - 06/12/2019 20:04:41

MRSILVA
MARINGA
Cadast. em:Julho/2015


Última edição em 07/12/2019 10:30:22 por MRSILVA

Citação:
aí sim a conexão é feita ao banco no modo tradicional, mas nesse caso, o banco está localmente em relação à sua WebAPI, ou seja, as duas estão na mesma máquina(ou farm, ou LAN ou seja lá o que for, mas local).  


Kerplunk só para exaltar ainda mais  o que você explicou sobre a performance de uma WebApi tenho uma aplicação (web) que a WEBAPI está em uma VPS e o banco de dados está no AZURE, ou seja,  em duas empresas diferentes, a rapidez é impressionante, o mais legal é que a aplicação quando está publicada tem praticamente a mesma performance do que quando estou testando minha aplicação (minha maquina de desenvolvimento (local) acessando o mesmo banco de dados (AZURE)) teoricamente teria que ter menos performance já que localmente os dados vão direto para o banco de dados e quando está publicada os dados tem que fazer dois caminhos. Eu não sabia explicar porque da diferença de performance de uma aplicação que utiliza conexão normal e de uma WEBAPI, mais uma coisa que apreendi aqui.





 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário