[Ajuda] Como reduzir WU ao criar e modificar dados? Ex.: adicionar item a lista do usuário

Oi pessoal,

Estou tentando entender como otimizar o consumo de WU ao criar e modificar dados no meu app.
No geral, meu objetivo é aprender como consumir menos WU em operações simples do banco de dados, como criar um registro e atualizá-lo depois.

Para explicar o problema, vou usar um caso específico que está me chamando atenção:


:pushpin: Exemplo real: adicionar um item à lista de um usuário

Tenho um Workflow muito simples:

  1. Crio um novo dado (um registro super básico).
  2. Faço um “Make changes to User” adicionando esse novo registro dentro de um campo do usuário que é uma lista.
  3. Na maioria dos casos, essa lista do usuário tem menos de 2 itens, na maioria dos casos estão até vazios.

Mesmo assim, nos logs estou vendo que este fluxo de adição está consumindo algo em torno de:

  • 14.417 runs
  • 23.109 WU
  • Média de ~1,60 WU por run

Para uma operação tão trivial, isso parece alto.


Minha dúvida

Esse exemplo é apenas um caso, mas levanta a pergunta maior:

:right_arrow: Como consumir menos WU ao criar dados e ao fazer pequenas modificações, como anexar um item a uma lista?

Queria entender:

  • Existe uma forma mais leve de adicionar itens a listas?
  • Vale mais a pena estruturar o banco de dados de outra forma?
  • “Make changes to User” é sempre mais caro do que deveria?

:bullseye: Meu objetivo

Aprender boas práticas para minimizar o consumo de WU em ações básicas como:

  • Criar um novo registro
  • Atualizar campos com poucos dados
  • Anexar um item em uma lista pequena
  • Fazer pequenas mutações no usuário

Qualquer dica, experiência ou sugestão de como melhorar isso já ajuda demais!

Olá @social7.

Essa operação simples que você realiza eu não vejo uma outra alternativa, porque pelo que parece não exista outra forma de realizar esta operação por meios nativos. O que eu quero dizer com isso é apenas colocar em pauta uma recomendação, algo que eu tenho feito em todos os meus projetos do último ano pra cá.

Recomendo que você utilize banco de dados e um backend externo utilizando Postgres + N8N, realizando todas as operações CRUD. A única desvantagem real é o websocket, mas ainda assim você pode buscar uma forma de contornar isso.

Vou te dar um dado real pra você verificar se vale a pena pra você de acordo com seu modelo de negócio:

Entreguei há 2 meses um sistema para um hospital responsável por fazer todo o controle de pagamentos, gerenciamento de usuários, acesso do usuário final ao aplicativo (PWA) para acessar seus pagamentos, gateway de pagamento, enfim…

  • 2.254 usuários cadastrados
  • Ações complexas de backend que eu não conseguiria desenvolver nativamente em Bubble agora apenas integro via API
  • Consumo total de WU = 19.496 nos últimos 30 dias

Talvez isso não seja exatamente o que você buscava, mas eu gostaria apenas de compartilhar pra que caso seja viável pra você está aí uma solução.

O backend e banco de dados externo viabilizaram projetos em escala para a minha empresa, já desenvolvi outros projetos 100% em bubble, com um volume de usuários idêntico a esse e tive que abandonar, porque o consumo de WU chegou a mais 500k/mês e o cliente não quis bancar, apesar de ainda assim eu achar um valor justo pro mercado.

Fico a disposição para te apresentar minha estrutura, caso queira entre em contato por e-mail: joaoanzolim@hotmail.com

Olá Joao,

Obrigado pela resposta e pela sugestão. Acredito que sua ideia seria ideal para alguns dados do meu uso. Durante o dia, conforme minha plataforma cresce, temos muitos cadastros de usuários e, consequentemente, uma grande quantidade de dados é criada e modificada. É justamente nessa parte que temos o top 2 de maiores consumos de WU do app, com ações simples gerando um consumo elevado de dados.

Com essa sua orientação, talvez consigamos reduzir cerca de 30% do consumo de WU do meu app. Agradeço muito e vou estudar essa possibilidade com atenção para ver como posso fazer isso.

1 Like