Casa > Q > Quais São As Vantagens Competitivas Do Pusher Vs. Pubnub?

Quais são as vantagens competitivas do Pusher vs. PubNub?

I'construímos grandes aplicações web de produção utilizando tanto Pusher como PubNub, e I'migrámos também aplicações de um para o outro. A maior diferença entre os dois serviços é que o PubNub usa streaming/long-polling HTTP enquanto o Pusher usa WebSockets. WebSockets é claramente a melhor tecnologia a longo prazo, mas não é confiável hoje em dia em certos cenários. Felizmente, o Pusher também adicionou um HTTP longo-polling fallback no caso do WebSockets não't funcionar.

I'irá entrar em mais detalhes abaixo:

p>Ferramentas de depuração
Both Pusher e PubNub fornecem algumas ferramentas de depuração. Eu acho o Pusher's mais fácil de usar. Por exemplo, no Pusher você pode simplesmente abrir o console de debug e ver todas as suas mensagens passarem. No PubNub, você tem que colar o nome exato do canal que você quer ouvir. O que é bom se o seu nome de canal for simples, mas é uma grande dor se o seu nome de canal tiver uma longa seqüência de caracteres aleatórios. Por que você faria uma coisa dessas? Bem, isso me leva a...p>Segurança/Canais Privados
Both PubNub e Pusher suportam o envio de mensagens através de canais criptografados.

Pusher tem uma abordagem simples de autorização chamada canais privados (http://pusher.com/docs/client_api_guide/client_private_channels) que lhe permite autenticar que um utilizador tem acesso a um determinado canal, fornecendo uma chave de autorização assinada pela sua chave secreta. Isto permite que você se autentique com base no usuário atualmente logado, por exemplo.

PubNub tem duas abordagens à autorização. Você pode 1) pagar uma taxa mensal extra (no momento em que isto for escrito $149/mo) pelo seu recurso Access Manager, que permite explicitamente conceder aos usuários permissão de leitura/escrita para canais específicos através de sua API do Access Manager ou 2) gerar nomes de canais únicos inserindo um token secreto imprevisível nos nomes de seus canais (defendido neste número do github: https://github.com/pubnub/pubnub-api/issues/9)

Event Delegation
Pusher tem um bom modelo de canal/evento onde você pode assinar um canal, mas depois vincular callbacks a eventos específicos através desse canal. I'achei esta uma forma bastante natural de implementar eventos de mensagens. PubNub não tem'não tem nada similar. Ao invés disso, você tem que criar um canal separado para cada evento ou rolar a delegação de eventos você mesmo.

Editar: PubNub'o CTO do PubNub disse que o PubNub suporta um modelo de evento, mas eu tive problemas para encontrar qualquer documentação sobre ele ou entender como ele funciona, mas ele me enviou este link em referência a ele: pubnub/javascript (https://github.com/pubnub/javascript/blob/master/examples/event-example/event-example.js)

Message Size
PubNub limita as mensagens a 1.800 bytes - o que pode não ser suficiente, dependendo do que você'está enviando. Isto provou ser problemático para mim quando parte do que o I'm push é dados inseridos pelo usuário que tem comprimento variável. Eles permitem aumentar o tamanho máximo para 7.2k por uma taxa mensal adicional ($149 no momento em que estou escrevendo isto)

Para piorar as coisas, a gema rubi do I's falha silenciosamente quando a mensagem é mais longa que isso - o que me custou horas de depuração tentando descobrir porque minhas mensagens estão't sendo recebidas.

Pusher's limits are 10kb per message as part of their normal offering (See: What is the message size limit when publishing a message?) They offer larger message sizes for enterprise plans.

Presence Channels
Both Pusher and Pubnub have presence channels, which might be of use to you if you're implementing a chat system, etc. Eu tenho'ainda não usei ou precisei destes.

Sumário
Overall, I'descobri que o Pusher tem melhor documentação/exemplos, uma melhor API, e melhores ferramentas backend/debug. Eu realmente gosto dos canais privados que o Pusher oferece, tamanhos de mensagem maiores e a capacidade de enviar diferentes eventos através de um único canal e assinar apenas eventos em particular. Mas vale a pena avaliar e fazer protótipos com ambos para descobrir o que melhor atende às suas necessidades particulares.

De Mauchi

O HDR na Netflix é horrível para mais alguém? :: Qual é o melhor anti-vírus e impulsionador de RAM para o Android?