Pergunta

Eu quero enviar dados para o navegador através de HTTP sem matar minha aplicação django / python.

Eu decidi usar um servidor de cometa, para pedidos de proxy entre o meu pedido eo cliente (embora eu ainda não têm realmente descobri-lo corretamente).

Eu olhei para os seguintes motores: orbitou cometd ejabberd pontão

Alguém já teve alguma experiência em trabalhar com esses servidores e implantá-los? Todos os links discernimento e respeito dos temas seria ótimo. Obrigado.

Foi útil?

Solução

Eu recomendaria para Torcido, seu servidor twisted.web, eo trabalho cometa feito em cima dele na DIVMOD. Eles podem lidar com conexões muito mais concorrentes do que fio tradicional ou servidores de processos com base, que é exatamente o que você precisa para algo como isto. E, sim, eu arquitetado sistemas usando torcida por coisas COMET, ao usar outras coisas para as aplicações web mais de frente ao lado dele. Ele funciona bem com cada parte fazendo o que faz melhor.

Outras dicas

Eu preciso fazer algo muito semelhante. Eu encontrei este, mas não tive o tempo para olhar para ele ainda corretamente:

django_evserver é servidor http simples para aplicações Django. É baseado em biblioteca libevent. A principal vantagem de django_evserver é que ele fornece métodos de preempting django vistas. Você pode processar um site em vários pedaços, cada um deles pode ser tratado por vista diferente Django.

Usando essa idéia, é possível usar django_evserver como servidor cometa para aplicações Django.

http://code.google.com/p/django-evserver/

Uma opção é Netty, quadro socket cliente-servidor baseado em Java NIO da JBoss. Para uma comparação e discussão ver aqui . Ele supostamente lida 100000 conexões abertas simultâneas em um servidor quad-core.

Se você pode executar Java Eu recomendaria StreamHub Comet Servidor .

Em primeiro lugar, a respeito de sua necessidade de não 'matar' a sua aplicação existente, o JavaScript incluem tem uma pegada muito baixo em menos de 10K. Eu uso ele para empurrar atualizações do usuário e bate-papo no site de rede social que estou construindo. Eu testei com 1000 acessos por dia e não havia nenhum efeito perceptível sobre a CPU.

Em segundo lugar, sobre a implantação, segui alguns dos exemplos e foi instalado e funcionando muito rapidamente em comparação com batendo a cabeça contra uma parede com cometd. Há uma boa Comet Olá Mundo recebendo guia de introdução e uma Google Grupo se você ficar preso em qualquer coisa .

Se você estiver olhando para combinar o Django com um servidor Comet (orbitou), verifique este projeto eu indo para integrar Django e orbitou em como "limpa" e do "mundo real" quanto possível aqui: http://github.com/clemesha/hotdot

Os endereços projeto problemas do "mundo real", como segurança e registro / filtragem / modificando as mensagens em trânsito cometa, etc - mas ainda é um trabalho em andamento.

Se você está executando o IIS, você pode conferir WebSync ( http://www.frozenmountain.com/ websync ), a (Bayeux) servidor cometa compatível com os padrões e cliente para .NET / IIS. Se você não quer que a carga adicional, a versão On-Demand é uma opção SaaS que offloads o trabalho pesado.

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