none
Trazendo info do banco de dados RRS feed

  • Pergunta

  • Pessoal,

    Tenho uma pagina de minha aplicacao que deve preencher 2 areas:

    1. Informacoes pessoais do usuario (Estes dados vem da tabela Users)

    2. Informacoes sobre as ultimas solicitacoes de um usuario (Que vem da tabela Requests)

    A duvida e' a seguinte:
    Ambas as informacoes sao trazidas apos a chamada de 2 Web.api distintas.
    O que eu preciso saber e':

    a) Seria melhor eu fazer 2 requisicoes http diferentes, cada uma trazendo seu tipo de objeto OU
    b) Criar um terceiro objeto que una as propriedades dos 2, fazer apenas 1 requisicao http 

    Valeu

    segunda-feira, 26 de janeiro de 2015 17:03

Respostas

  • Aí vai depender do uso futuro que vc está imaginando para estes serviços Web API.

    Os 2 Web APIs são utilizados por outras aplicações?

    Caso vc crie um terceiro Web API, de forma a agrupar as funcionalidades dos dois primeiros. Alguma outra aplicação irá utilizar isto ou somente o seu sistema? Se isso estiver restrito ao seu projeto, acredito que talvez não seja uma boa ideia agrupar as duas operações já existentes.

    No geral, um dos princípios que guiam o desenvolvimento de Web Services (Web API ou mesmo WCF) é a questão da reusabilidade. Se um serviço tem uma chance mínima de ser reaproveitado, então o recomendável é que se implemente a funcionalidade diretamente na aplicação considerada.

    Espero ter ajudado.

    Abs

    • Marcado como Resposta AGA Neto segunda-feira, 26 de janeiro de 2015 17:49
    segunda-feira, 26 de janeiro de 2015 17:08
  • Então,

    Essa questão de ser um serviço pode afetar a performance também. Eu não sei qual volume de dados vocês pretendem trafegar, mas um web service é normalmente usado para integrações pontuais e que envolvam pequenas quantidades de informações.

    Lembre-se que se vc criar um novo serviço, precisará ainda fazer o deploy do mesmo e configurar um diretório virtual no IIS. Ao menos na minha análise, por se tratar de algo usado por apenas uma aplicação, eu evitaria este caminho.

    Abs

    • Marcado como Resposta AGA Neto segunda-feira, 26 de janeiro de 2015 17:49
    segunda-feira, 26 de janeiro de 2015 17:42

Todas as Respostas

  • Aí vai depender do uso futuro que vc está imaginando para estes serviços Web API.

    Os 2 Web APIs são utilizados por outras aplicações?

    Caso vc crie um terceiro Web API, de forma a agrupar as funcionalidades dos dois primeiros. Alguma outra aplicação irá utilizar isto ou somente o seu sistema? Se isso estiver restrito ao seu projeto, acredito que talvez não seja uma boa ideia agrupar as duas operações já existentes.

    No geral, um dos princípios que guiam o desenvolvimento de Web Services (Web API ou mesmo WCF) é a questão da reusabilidade. Se um serviço tem uma chance mínima de ser reaproveitado, então o recomendável é que se implemente a funcionalidade diretamente na aplicação considerada.

    Espero ter ajudado.

    Abs

    • Marcado como Resposta AGA Neto segunda-feira, 26 de janeiro de 2015 17:49
    segunda-feira, 26 de janeiro de 2015 17:08
  • Na verdade eu nao mexeria nos servicos pois outras aplicacoes irao utiliza-los.

    Entao eu criaria um 3 servico que chamaria os 2 servicos existentes para preencher esse novo objeto (objeto este que teria propriedades de 2 tabelas).

    E mesmo que seja so para meu sistema, nao valeria a pena ?
    Estou imaginando um cenario que preciso de dados de 4 tabelas diferentes. Nao seria melhor eu ter apenas uma chamada HTTP e trazer tudo de uma vez ? Ou melhor mesmo ter objetos distintos e fazer 4 chamadas HTTP ?
    Meu medo e' em termos de performance. 

    segunda-feira, 26 de janeiro de 2015 17:22
  • Então,

    Essa questão de ser um serviço pode afetar a performance também. Eu não sei qual volume de dados vocês pretendem trafegar, mas um web service é normalmente usado para integrações pontuais e que envolvam pequenas quantidades de informações.

    Lembre-se que se vc criar um novo serviço, precisará ainda fazer o deploy do mesmo e configurar um diretório virtual no IIS. Ao menos na minha análise, por se tratar de algo usado por apenas uma aplicação, eu evitaria este caminho.

    Abs

    • Marcado como Resposta AGA Neto segunda-feira, 26 de janeiro de 2015 17:49
    segunda-feira, 26 de janeiro de 2015 17:42
  • Mesmo unindo os 4 servicos, meu objeto teria em torno de 15 propriedades string pequenas.
    Mas acho que vou acabar mantendo e fazendo 4 chamadas http entao.

    Valeu

    segunda-feira, 26 de janeiro de 2015 17:49
  • Sem problemas, amigo. No meu caso, venho buscando simplificar, já que o deploy de novas aplicações não costuma ser algo muito simples aqui na empresa.

    Abs

    segunda-feira, 26 de janeiro de 2015 17:50