Pergunta

Eu estou trabalhando no desenvolvimento de uma nova plataforma para um determinado tipo de aplicação.Estas aplicações, principalmente, existe em ambos os dispositivos iOS e Android.Um dos principais requisitos destas aplicações é que é sincroniza dados em tempo real e é seguro.Meu pensamento foi diretamente para utilizar algum tipo de enfileiramento de protocolo utilizando sockets.As restrições no servidor é que ele teria de ser escrito em Java ou PHP.No entanto, os clientes são irrestritas.Como eu mencionei, principalmente iOS (Objective-C) e Android (Java) dispositivos.

Devo implementar algo como ActiveMQ ou Tibco, ou deveria existem outras soluções que podem ser melhor usar?

Melhores cumprimentos,
Paulo Peelen

Foi útil?

Solução

A melhor maneira é usar a API RESTful sobre HTTP. As pessoas que dizem que os soquetes são mais seguros do que o HTTP geralmente não entendem sobre o que estão falando (nada privado, homem. Apenas negócios!)

O HTTP é um protocolo de transporte que funciona com soquetes TCP. Portanto, o HTTP também é soquetes. O que lhe dá segurança é a criptografia do que você está enviando. SSL é a resposta. Usuário HTTPS para tornar seu aplicativo seguro.

Agora sobre fila. É necessário enfileirar para dissipar a entrega de informações e seu processamento. Isso é preferível no seu caso, porque o processamento pode levar tempo e você não deseja bloquear o remetente (dispositivo móvel) enquanto o servidor está processando os dados. Eu sugiro que você use a implementação de código aberto do corretor de mensagens (como ActiveMQ, Rabitq, QPID etc). A Tibco é perfeita, mas custa algum dinheiro. E se você estiver indo para o Java Messaging Broker, implemente seu servidor no Java e na API JMS do usuário, suportada por todos os corretores de mensagens.

Eu espero que isso ajude.

Outras dicas

Opção 1:

RSS formato de mensagem via HTTPS e T segundo temporizador.
HTTPS é de criptografia transfer protocol over SSL sockets (também usada por e-banking).

Opção 2:

O RESTO via HTTPS e T segundo temporizador.
É uma coisa boa para um personalizado resto protocolo binário baseado em vez de baseado em texto, como Http?

Opção 3:

Chutando o servidor HTTP, php e usando SSL de sockets em Java.
http://stilius.net/java/java_ssl.php

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top