REST: Melhores práticas

REST

06/02/2017

Olá, pessoal. Tudo bem?

Estou desenvolvendo um web service RESTful e tenho tido algumas dúvidas sobre como fazer cada coisa. Por exemplo, como vocês costumam fazer ou qual é a melhor forma para montar a URL? Tomando um exemplo de adição de clientes:

Opção 1: /servico/clientes/adicionar (com o método POST)

Opção 2: /serviço/clientes (com o método POST)

Já vi as duas formas e a primeira parece mais intuitiva, no entanto, como vocês fazem geralmente?

Obg
Rachel Andrade

Rachel Andrade

Curtidas 0

Melhor post

Joel Rodrigues

Joel Rodrigues

17/02/2017

Olá, Rachel. Tudo bem?

Normalmente utiliza-se a segunda opção. Isso é, inclusive, uma recomendação do padrão REST.
GOSTEI 1

Mais Respostas

Joao

Joao

06/02/2017

Bom dia, aproveitando o tópico do amigo, acredito que o mesmo vai passar por esta situação também.

Recentemente desenvolvi um servidor REST, no qual exporta dados de um banco de dados (Firebird) para dispositivos mobile.

A conexão com o banco de dados é feita pelos componentes FireDac. Quando inicio o servidor faço a conexão com o banco de dados, a conexão fica estabelecida até o servidor ser fechado.

Realizando alguns testes percebi que, quando um dispositivo realiza as requisições tudo funciona perfeitamente, porém [b]o problema surge quando vários dispositivos fazem conexões simultâneas[/b], ocorre diversos erros, Access Violation e erros do banco de dados.

Para corrigir esses erros, em cada método requisitado no servidor inicio uma nova conexão com o banco de dados. Fazendo isto os erros não ocorrem mais e posso conectar diversos dispositivos simultaneamente.
Sei que essa não é a maneira correta, percebi logo de inicio que o processo ficou MUITO lento, pelo fato de toda requisição iniciar uma nova conexão.

Então gostaria de saber como faço para trabalhar com sessões no FireDac, para cada requisição no servidor não influenciar em outras conexões.

Vou criar um tópico para esta dúvida, porem achei interessante estarmos debatendo essa situação aqui também
GOSTEI 0
Rachel Andrade

Rachel Andrade

06/02/2017

Oi, Joao. Tudo bem?

Pelo que venho estudando sobre REST, vi que o serviço deve ser "stateless", ou seja, não deve armazenar estado entre uma requisição e outra. Logo, creio que realmente precisem ser criadas várias conexões.

Parece estranho realmente, pois dá pra imaginar logo que vai prejudicar o desempenho.

Será que alguém tem experiência com isso?
GOSTEI 1
POSTAR