7 pontos por xguru 2020-09-29 | 1 comentários | Compartilhar no WhatsApp
  • Unique Durable Objects para serverless

→ Objects: exatamente como no conceito de OOP, são instâncias de classe que incluem código e estado

→ Unique: possuem UUID. Se outros Workers em qualquer lugar do mundo souberem o ID, podem enviar mensagens para esse objeto

→ Durable: diferente de objetos comuns, podem armazenar estado persistente em disco. É possível acessar e usar isso sem latência

  • Duas funções principais

→ Storage: oferece forte consistência transacional. É possível dividir um grande banco de dados em várias pequenas unidades. Escala sem a sobrecarga de manutenção

→ Coordination: como requisições serverless normalmente são balanceadas de forma aleatória, era impossível fazer com que dois clientes se conectassem ao mesmo Worker; agora isso é possível.

Ou seja, passa a ser possível implementar em serverless chat em tempo real, edição colaborativa, videoconferência, filas de mensagens Pub/Sub, sessões de jogo etc.

Para usar WebSocket, esse tipo de coordination era necessário, e com isso se tornando possível via DO, o Workers também passa a oferecer suporte a WebSocket

  • Durable Objects não têm conceito de região, e atendem o mundo inteiro (a Cloudflare cuida do roteamento e gerenciamento para o local mais próximo)

Aplicações

  • O killer app deve ser algo como uma ferramenta colaborativa de edição de documentos em tempo real usada por um grande número de pessoas

  • Atomic Counter: contador concorrente que não perde incrementos/decrementos mesmo com várias requisições simultâneas de múltiplos clientes

  • Chat: até salas de conversa gigantes podem ser feitas com algumas centenas de linhas de código, e também é possível aplicar rate limit por IP

  • Carrinho de compras, servidor de jogos, coordination de IoT, feed social e widgets de comentários/chat

O futuro do Durable Objects: um verdadeiro banco de dados de edge

No momento, só pode ser usado mediante convite para o beta

O preço ainda está sendo estudado, mas a previsão é que seja mais barato que AWS DynamoDB ou Google Cloud Firestore (segundo um comentário do PM Greg no HN)

1 comentários

 
xguru 2020-09-29

O serverless tem sido aplicado principalmente a coisas stateless, e agora eles estão expandindo isso para incluir até as partes que precisam de coordenação.

Ultimamente, os movimentos da CloudFlare têm sido muito interessantes.

CloudFlare, início do beta do serverless Workers Unbound https://pt.news.hada.io/topic?id=2543

Como a CloudFlare zerou o tempo de cold start do Workers https://pt.news.hada.io/topic?id=2567

Cloudflare lança serviço de TV com transmissão ao vivo 24 horas usando sua própria rede global https://pt.news.hada.io/topic?id=2227