Pergunta

Alguém sabe como sites que têm um feed em tempo real de um monte de trabalho de dados? Refiro-me a algo como um local de estoque, onde eles podem dizer-lhe em tempo real (bem, 20 minutos de atraso em sua maioria, mas ainda em tempo real - 20 minutos como eu o entendo).

Eles têm milhares de peças de dados que lhes são entregues a cada segundo, eu imagino: MSFT 25,00 +.23 VOL 12000 ???? para cada ação que teve uma mudança durante algum intervalo.

Assim, há apenas uma alimentação constante de pequenos empurrões acontecendo? Ou você acha que um site vai puxar a partir do lugar que tem os dados reais e dizer "dá-me todas as mudanças desde 12:23:45 CST agora" consulta tipo?

Pergunto isso porque no trabalho poderíamos ter uma situação onde precisamos ter ao alcance de nossa aplicação informações em tempo real como este, e ele não vai fazer sentido para bater o nosso fornecedor de terceiros, uma e outra e outra vez a cada segundo ...

Foi útil?

Solução

Geralmente há um protocolo cliente / servidor definida entre as 2 partes. No trabalho da empresa I para a ligação é mantida em todos os momentos.

Aqui está informações sobre feeds de dados em tempo real para ir com o seu exemplo estoque

NYSE , NASDAQ

É comum para os fornecedores de dados também ter sites FTP com (atrasada) de dados em lote. Aquele que vem à mente é a NWS EMWIN

Outras dicas

Sites como Twitter dados de alimentação para determinados sites aprovados em tempo real através de XMPP ( Wiki ligação ).

Em termos mais amplos, um modelo de envio vai ser a melhor maneira de alcançar "tempo real" de transferência, especialmente se você está falando de uma grande quantidade de dados.

No entanto, você sempre têm um problema ao usar um impulso puramente modelo de como se recuperar de dados perdidas.

Dependendo da natureza de seus dados que pode não ser um problema (o pensamento de entrega de vídeo como um análogo, em que a quantidade de dados é enorme, mas há redundância suficiente para ele se recuperar de dados em falta). E se você tem qualquer controle sobre os dados que você pode ser capaz de construir alguma redundância. Por exemplo, em cada evento de alteração você pode fornecer valores absolutos ao invés de mudanças, ou valor anterior e novo valor.

Eu fiz isso fazendo uma tentativa para recuperar a cotação de ações a partir da fonte, e caindo de volta para um cache timestamped em disco da citação quando a fonte principal falhar ou tempo limite.

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