Tag: prosody

  • Corrente do bem

    Reading Time: 2 minutes

    Sempre acreditei em correntes do bem, que fazer coisas em prol da felicidade coletiva sempre era o melhor caminho e uma das poucas formas de felicidade absoluta. E parece que isso realmente reflete nas nossas vidas de diversas formas.

    Desde o início do isaCloud algumas pessoas próximas e de confiança me falavam para disponibilizar uma forma dos usuários e simpatizantes apoiarem financeiramente o projeto com doações, de forma totalmente espontânea.

    E eu relutei mais de 1 ano para, pelo menos, tentar.

    No último final de semana resolvi tomar a coragem e disponibilizar no site oficial do isaCloud informações sobre contribuições para o projeto.

    A meta é basicamente oportunizar contribuições espontâneas, sem o compromisso de que isso será a única forma de manter o serviço ativo, disponível, redundante e gratuito para sempre para usuários finais. Ele continuará assim sempre, seja de onde os recursos vierem.

    Quando a gente ilumina o caminho de alguém com uma lanterna, a gente está iluminando o próprio caminho

    O isaCloud nunca teve a intenção de ser apenas “meu”. Desde o princípio ele foi pensado de forma a oferecer uma via mais livre, segura, feliz e colorida de mantermos nossas comunicações mais importantes.

    Hoje, dia 25/02/2026, 14 meses depois do início dessa jornada, somos 162 alminhas que têm a oportunidade de priorizar as conversas mais importantes e ter um pouco mais de qualidade de vida, com menos estímulos e mais relevância.

    “A roda da vida”

    Nesses poucos dias em que as informações de doação foram disponibilizadas, o isaCloud já recebeu alguns apoios que eu, pessoalmente, jamais esperaria.

    E eu quero agradecer IMENSAMENTE! 🥰

    Me alegra o coração saber que mais pessoas tem o bom coração e a generosidade de contribuir para projetos em que elas acreditam.

    E digo isso porque eu mesma, no mesmo final de semana que disponibilizei essas informações para o isaCloud, também realizei apoios para pelo menos 2 projetos que são fundamentais para a existência do isaCloud: o Prosody – servidor XMPP utilizado no serviço – e o Movim – cliente XMPP web com muito potencial de ser um farol para o início de jornada de novos usuários. O próximo a receber um apoio recorrente meu será o Conversations, aplicativo XMPP Android no qual o app isaCloud é baseado.

    A corrente do bem. O caminho iluminado para outros projetos que também ilumina o meu próprio.

    Isso reforça em mim a crença de uma sociedade melhor. 💜

    Para mais informações sobre doações, acesse:

    https://isacloud.com.br/donate.

    Meu MUITO obrigada!

    Com carinho,
    Isadora.

  • Diga seu nome, demônio!

    Reading Time: < 1 minute

    Hoje foi um dia interessante porque um amigo querido, sysadmin como eu, estava enfrentando uma questão de leak de memória no serviço de XMPP do ecossistema que ele administra.

    Ficamos num “ping pong” de idéias sobre o que poderia estar gerando aquele comportamento. A princípio o Prosody não demanda muitos recursos mas, no caso dele, o serviço estava “leakando” de tal forma que comprometia o ambiente como um todo onde o serviço está alocado.

    Analisa gráfico daqui, analisa gráfico dali, avalia o que houve de mudança recente no ambiente – nenhuma identificada -, avalia se o volume de sessões server to server e client to server estavam estourando e tal… nada. Nadinha. Nadica.

    Lembro de um pequeno diálogo em que o Blake (personagem do filme Batman – O Cavaleiro das Trevas Ressurge) conversa com o Comissário Gordon. Blake diz: “mas senhor, eu não entendo nada de construções”… e o Comissário responde: “mas você pode entender de padrões! Agora você é meu detetive e não mais oficial de patrulha”.

    Isso é bem real…. quando a gente vai acumulando horas de vôo na nossa profissão ou num hobby a gente vai aprendendo a juntar conexões, padrões e saber alguns caminhos que invariavelmente ajudam a diagnosticar os problemas mais cabeludos e misteriosos.

    Depois de alguns papos no canal XMPP a respeito do misterioso leak, o amigo foi pela abordagem de começar a descarregar os módulos extras do Prosody que foram adicionados mais recentemente… e PÁ! Parece que uma luz apareceu e o “demônio deu sinais de qual era seu nome”!

    Nem foi preciso chamar o Exorcista do Papa, Signore Gabriele Amorth (interpretado por Russel Crowe)… o amigo foi o próprio Leak Exorcist da vez 🙂

    E o nome do demônio? Parece que era mod_cloud_notify_extensions 😈

  • Rumo ao uptime infinito

    Reading Time: < 1 minute

    Brincadeiras à parte, eu sou a “doida do uptime”. Pelo hábito de trabalhar em operação de plataformas que operam 24×7, todo meu direcionamento é para manter sistemas rodando da forma mais contínua possível.

    Claro, há manutenções que demandam um restart de serviço, restart de host, de hipervisor e etc, mas o esforço é constante para que cada usuário de um serviço gerenciado por mim tenha a maior confiabilidade possível no serviço.

    Com o isaCloud não é diferente. São poucos usuários? São – quase 100 atualmente -, mas cada pessoa importa. A confiança que um usuário deposita no isaCloud como seu meio de comunicação torna minha missão de gerenciar esse serviço digna de carinho e dedicação máximos.

    Batemos mais de 71 dias de uptime no isaCloud, mas provavelmente vem uma atualização de Prosody que vai demandar aquele restart maroto… Nesses casos, tomo o cuidado de sempre avisar toda base de usuários e realizar as manobras num horário de menor impacto possível.

    E o que eu ganho com isso? Um coração quentinho por saber que cada login do isaCloud merece o melhor de mim e que essa confiança faça com que os usuários tragam mais pessoas com quem eles gostariam de manter conversas significativas dentro do isaCloud. 😊

  • Alta disponibilidade acessível

    Reading Time: 2 minutes

    Venho há algumas semanas organizando uma forma de ter alta disponibilidade para o serviço isaCloud. É claro que o conceito de alta disponibilidade precisa ser de acordo com as demandas do “negócio” (entre aspas porque isaCloud é um serviço sem fins comerciais).

    O que eu tenho pensado:

    • Ter um cold site, isto é, um segundo datacenter (ou site secundário) com dados replicados que possa assumir o serviço
    • Não preciso ter failover automático
    • O chaveamento dos sites pode tolerar uma mudança e propagação de DNS (até 1h, digamos)

    Comecei configurando um simples lsync entre o datacenter A e o datacenter B. Estou há duas semanas mantendo essa replicação ativa de dados e configurações entre um servidor no Brasil e um na Holanda.

    Eu testei a virada de DNS de um dos domínios que tenho no isaCloud e a seguir compartilho o que funcionou e o que não funcionou:

    ✅ Consistência do histórico de mensagens
    ✅ Baixa latência para replicação
    ✅ Configurações do servidor e certificados
    ✅ Boot do serviço
    ✅ Reconexão de conversas com usuários de servidores externos
    🔴 Reconexão de conversas com usuários de outros domínios também do isaCloud

    Como mencionei ali em cima, eu virei apenas 1 domínio dos 5 que tenho no isaCloud e, nesse caso, a comunicação entre o domínio “migrado” pro site secundário e os demais que ficaram no site primário não funcionou bem porque os domínios que ficaram achavam ainda que o domínio em questão ainda era servido pelo site primário.

    Outra questão que não ficou clara para mim é sobre deixar previamente configuradas entradas de DNS SRV com menor prioridade para que a escolha pelo site secundário fosse automática. Mas isso tem uns poréns:

    • Pro meu teste não funcionou porque o site primário continuava acessível no target da entrada SRV já que os demais domínios seguiam funcionando lá
    • No caso de um failover automático pro site secundário através dessa entrada SRV com prioridade menor, o failback acabaria acontecendo automaticamente se o site primário voltasse a responder sozinho – porém os dados no site primário estariam desatualizados.

    Bem, ainda tô desenhando a melhor forma de fazer isso tudo:

    • Failover automático com faiback manual
    • Failover manual alterando o hostname pra onde os SRV apontam

    Num próximo post eu compartilho o que ficou decidido e como ficou implementado.

    Com carinho,
    Isadora.

  • Como eu cheguei no Lua

    Reading Time: < 1 minute

    Foi sorte… de verdade.

    Quando comecei a pesquisar sobre XMPP depois de ANOS afastada desse protocolo tão legal, me deparei com uma lista de servidores XMPP no site da XSF (https://xmpp.org).

    Eu tinha a lembrança nítida do Openfire, um dos servidores mais clássicos e padrões desde 2003 pelo menos.

    Mas eu queria recomeçar meu contato com o ecossistema. Olhei vários nomes de servidores na lista até que um deles me chamou atenção: Prosody. Ali indicava ser feito em Lua e eu pensei: “deve ser leve, acho que merece ser estudado”.

    Entrei na documentação, no repositório, olhei, olhei… parecia simples de implementar. E assim foi.

    Comecei a me debruçar sobre o Prosody, preparar container para implantação, comecei a conhecer o código fonte, a modularização, a lista enorme de módulos de comunidade e fiquei apaixonada: é isso!

    Cheguei num ponto em que já escrevi alguns pequenos módulos e modifiquei o comportamento de alguns componentes core para que a jornada de novos usuaŕios no isaCloud fosse mais amigável.

    Não me arrependo! Estou super satisfeita depois de quase 8 meses de uso, sem reclamações.

    Ter contato com os desenvolvedores diretamente por um canal XMPP também dá muita confiança de que resolver problemas não é um caminho tão árduo.

    Fico feliz de hoje estar tão confortável a ponto de poder ajudar mais pessoas que estão na jornada do Prosody.