MQTT gerenciado na nuvem

Como Escolher um Broker MQTT para Startups: Comece Grátis e Escale Sem Lock-In

Equipes de IoT em estágio inicial precisam de um broker que não custe nada no primeiro dia e que não as prenda depois. Este guia mostra o que escolher, o que evitar e como planejar o crescimento.

Ilustração de broker MQTT para startups mostrando os dispositivos de protótipo de uma pequena equipe crescendo até uma frota maior em um broker na nuvem
Rode isso no seu próprio broker MQTTTenha um broker MQTT privado e gerenciado no plano Free e comece com exemplos de código prontos.
Teste grátis Exemplos de código Sem cartão de crédito

Escolher um broker MQTT para startups é um problema diferente de escolher um para uma empresa já estabelecida: você precisa de algo gratuito ou quase gratuito hoje, rápido de integrar e fácil de abandonar ou escalar se o negócio decolar. Este guia oferece às equipes de IoT em estágio inicial, seja uma agtech que monitora fazendas ou uma startup de eficiência energética para a indústria, um processo prático de decisão, um design de firmware que mantém você portável e um plano em etapas que vai de um broker Serverless gratuito da ConnectMQ até capacidade dedicada.

O Que as Startups Realmente Precisam de um Broker

As restrições de uma startup são tempo, dinheiro e incerteza. Você ainda não sabe se terá cinquenta dispositivos ou cinquenta mil no ano que vem, quais protocolos as equipes de TI dos seus clientes vão aceitar ou quais recursos do seu produto vão sobreviver ao contato com o mercado. Isso leva a uma lista curta de requisitos:

  • Zero operação. Cada hora gasta aplicando patches em uma VM de broker é uma hora a menos no produto. Um broker MQTT gerenciado elimina esse trabalho.
  • Gratuito ou muito barato em pequena escala. Seu MVP não deve carregar custos de infraestrutura pensados para frotas em produção.
  • Protocolo padrão, sem SDK proprietário. MQTT 3.1.1 e 5.0 puros significam que qualquer biblioteca funciona em qualquer dispositivo, e que você pode trocar de provedor depois.
  • TLS e credenciais desde o primeiro dia. Adaptar a segurança depois sai caro; comece com conexões criptografadas.
  • Um caminho de crescimento visível. Você quer saber o que acontece com 25, 1.000 e 10.000 conexões antes de chegar lá.

Opções Comparadas

Opção Esforço inicial Custo na fase de MVP Risco de lock-in Observações
Servidor MQTT público Nenhum Gratuito Nenhum Ótimo para demos, nunca para dados de clientes
Mosquitto auto-hospedado em uma VM Médio Custo baixo da VM mais o seu tempo Baixo Patches, TLS, monitoramento e indisponibilidades ficam com você
Plataforma IoT na nuvem com SDK proprietário Médio Variável Alto Código do dispositivo amarrado às APIs do fornecedor
Broker MQTT gerenciado (serverless) Baixo Nível gratuito disponível Baixo com MQTT padrão As cotas definem quando fazer upgrade

Para a maioria das equipes iniciais, a resposta certa é um broker MQTT gerenciado serverless para tudo o que for real e um servidor MQTT público para experimentos descartáveis. O servidor MQTT público gratuito em broker.connectmq.com é ideal para um primeiro spike: anônimo, aceita qualquer client ID único e não vazio, com topics sob um prefixo exclusivo como connectmq/demo/k29xq/.... Como tudo ali pode ser lido por qualquer pessoa, migre para um broker privado assim que dados de um cliente piloto estiverem envolvidos.

Plano Etapa por Etapa

Etapa 1: Spike (Dias)

Use o servidor MQTT público para provar o ciclo do dispositivo ao dashboard. Use mosquitto_pub e mosquitto_sub para conferir os topics:

mosquitto_sub -h broker.connectmq.com -p 1883 -i spike-sub-k29xq -t 'connectmq/demo/k29xq/#' -v
mosquitto_pub -h broker.connectmq.com -p 1883 -i spike-pub-k29xq \
  -t 'connectmq/demo/k29xq/dev1/telemetry' -m '{"temp":22.4}'

Etapa 2: MVP e Pilotos (Semanas a Meses)

Crie um broker Serverless gratuito na ConnectMQ. Ele suporta até 25 conexões, QoS até 1 e mensagens de 256 KB, o que cobre algumas unidades piloto, um worker de backend e alguns dashboards. Você recebe TLS na 8883, WebSocket na 8083 e 8084, um cliente no navegador, um explorador de topics, um dashboard e regras de alerta por limite, o que muitas vezes basta para fazer demos para investidores sem construir sua própria interface administrativa.

Etapa 3: Primeiras Receitas (Centenas de Dispositivos)

Migre para o Serverless (Paid): até 1.000 conexões, QoS 2, mensagens de 1 MB e shared subscriptions, para que você possa executar vários workers de backend dividindo um mesmo fluxo com $share/workers/devices/+/telemetry. Leia níveis de QoS no MQTT explicados antes de ativar QoS 2 em tudo; a maior parte da telemetria funciona bem com QoS 1.

Etapa 4: Escala e Clientes Corporativos

Quando você precisar de isolamento, folga previsível ou respostas para uma revisão de segurança, migre para um broker MQTT dedicado. Se um grande cliente exigir que o broker rode na conta de nuvem dele, o BYOC cobre esse caso enquanto a ConnectMQ continua operando o broker.

Projete para Portabilidade Desde o Primeiro Dia

O lock-in raramente vem do broker em si. Ele vem de atalhos no seu firmware e no seu backend. Estes hábitos mantêm você livre para mudar.

Mantenha as Configurações de Conexão Fora do Código

Nunca compile hostname e credenciais no firmware como constantes que você não pode alterar. Provisione-os na fabricação ou por um fluxo seguro de onboarding e armazene-os em memória não volátil. Veja um padrão mínimo para ESP32 usando a biblioteca Preferences:

#include <Preferences.h>

struct MqttConfig {
  String host;
  uint16_t port;
  String user;
  String pass;
  String clientId;
};

MqttConfig loadMqttConfig() {
  Preferences prefs;
  prefs.begin("mqtt", true);  // somente leitura
  MqttConfig cfg;
  cfg.host = prefs.getString("host", "broker.connectmq.com");
  cfg.port = prefs.getUShort("port", 8883);
  cfg.user = prefs.getString("user", "");
  cfg.pass = prefs.getString("pass", "");
  cfg.clientId = prefs.getString("cid", "");
  prefs.end();
  return cfg;
}

void saveMqttConfig(const MqttConfig& cfg) {
  Preferences prefs;
  prefs.begin("mqtt", false);
  prefs.putString("host", cfg.host);
  prefs.putUShort("port", cfg.port);
  prefs.putString("user", cfg.user);
  prefs.putString("pass", cfg.pass);
  prefs.putString("cid", cfg.clientId);
  prefs.end();
}

Com isso implementado, migrar de um broker serverless para um dedicado, ou para outro provedor, vira um envio de configuração em vez de uma nova versão de firmware.

Use MQTT Puro, Não um SDK de Fornecedor

Fique com bibliotecas abertas amplamente usadas: PubSubClient ou AsyncMqttClient no ESP32, paho-mqtt em Python, MQTT.js em Node.js e nos navegadores. Elas funcionam com qualquer broker compatível com o padrão.

Seja Dono da Sua Estrutura de Topics

Projete os topics em torno do seu domínio, não do seu provedor: acme/{customerId}/{siteId}/{deviceId}/telemetry. Nosso guia sobre como escolher um broker MQTT para IoT traz mais critérios de avaliação, e uma boa estrutura de topics sobrevive a qualquer troca de broker.

Mantenha as Integrações Fora do Broker

Grave a telemetria no seu banco de dados com seu próprio serviço assinante, fluxo do Node-RED ou Telegraf. Essa lógica vai com você. A ConnectMQ mantém deliberadamente o broker como um broker; as integrações rodam como clientes MQTT comuns, que é exatamente o padrão portável que você quer de qualquer forma.

Erros Comuns das Startups

  1. Entregar unidades de demonstração apontando para um servidor MQTT público. Funciona até um cliente perceber que os dados dele podem ser lidos pelo mundo inteiro.
  2. Um único username compartilhado por todos os dispositivos. Você não consegue revogar uma única unidade comprometida. Use credenciais distintas ou, no mínimo, client IDs distintos por dispositivo.
  3. Client IDs duplicados. Dois dispositivos com o mesmo ID desconectam um ao outro em loop.
  4. Sem backoff na reconexão. Após uma indisponibilidade, todos os dispositivos martelam o broker ao mesmo tempo. Adicione backoff exponencial com jitter.
  5. Tratar QoS 2 como "mais confiável, então sempre melhor". Ele adiciona idas e voltas e estado; torne os consumidores idempotentes e use QoS 1.
  6. Payloads enormes. Envie imagens ou logs para um object storage e publique uma referência.
  7. Nenhum topic de status. Use uma mensagem Last Will e um topic de status retido para que o seu dashboard saiba quais dispositivos estão offline.

Um Checklist de Decisão Simples

Antes de se comprometer, responda a estas perguntas com a sua equipe:

  1. Conseguimos criar um broker e conectar um dispositivo via TLS em menos de uma hora?
  2. O protocolo é MQTT 3.1.1 ou 5.0 puro, sem SDK obrigatório?
  3. Os limites do nível gratuito estão documentados, e sabemos qual deles vamos atingir primeiro?
  4. Existe um upgrade claro para mais conexões e, depois, para capacidade isolada?
  5. Conseguiríamos migrar para outro broker alterando apenas a configuração?
  6. O portal oferece visibilidade suficiente (explorador de topics, dashboard, alertas) para não precisarmos construir a nossa no primeiro dia?

Se as respostas forem sim, você tem um broker adequado para uma startup. Para uma visão mais ampla dos modelos de hospedagem, veja nosso guia de broker MQTT na nuvem.

Lance Seu MVP na ConnectMQ

Crie um broker Serverless gratuito em app.connectmq.com, sem cartão de crédito. Você recebe credenciais em minutos, endpoints TLS e WebSocket e ferramentas de portal para demonstrar o seu produto. Quando a frota crescer, a ConnectMQ oferece os planos Serverless (Paid), Dedicated e BYOC sobre o mesmo protocolo padrão, então escalar é um upgrade, não uma reescrita.

Perguntas frequentes

Qual é o melhor broker MQTT para startups com orçamento apertado?

Um broker MQTT gerenciado com um nível realmente gratuito e suporte a MQTT padrão, para que você não pague nada durante o MVP e evite trabalho operacional. Um plano Serverless gratuito, por exemplo, suporta até 25 conexões com TLS.

Uma startup deveria hospedar o próprio Mosquitto?

Pode, mas então patches, certificados, monitoramento e indisponibilidades ficam por sua conta. A maioria das equipes pequenas obtém mais valor investindo esse tempo no produto.

Como evitamos lock-in de fornecedor com um broker MQTT?

Use bibliotecas MQTT padrão, mantenha as configurações de conexão configuráveis, projete sua própria estrutura de topics e execute as integrações como assinantes externos.

Quando uma startup deve migrar para um broker dedicado?

Quando estiver se aproximando das cotas de conexão, precisar de desempenho previsível sob carga constante ou quando a revisão de segurança de um cliente exigir infraestrutura isolada.

Artigos relacionados

Broker MQTT BYOC: Bring Your Own Cloud Explicado

Um broker MQTT BYOC roda na sua conta de nuvem, mas é operado por um provedor. Entenda como o modelo funciona, a divisão de responsabilidades e como preparar a sua conta para ele.

9 min de leitura

Alternativa ao Google Cloud IoT Core: Opções e Migração Após o Encerramento

O Google desativou o Cloud IoT Core em agosto de 2023. Este guia compara as alternativas realistas, mapeia os conceitos do IoT Core para MQTT puro e mostra como mover dispositivos para um broker MQTT gerenciado mantendo os dados fluindo para o Google Cloud.

9 min de leitura

Mensagens MQTT por Segundo: Como Estimar e Medir a Vazão

O planejamento de vazão em MQTT se resume a algumas fórmulas e a uma medição honesta. Aprenda a estimar mensagens de entrada e saída por segundo, considerar os picos e associar o resultado a um plano de broker.

8 min de leitura

Todos os artigos →

Seu broker MQTT privado está a poucos cliques de distância

Crie uma conta, receba as credenciais do seu broker e conecte seu primeiro dispositivo — sem servidores para instalar, atualizar ou escalar.