7 puan yazan xguru 2020-09-29 | 1 yorum | WhatsApp'ta paylaş
  • Serverless için 'Unique Durable Objects'

→ Objects: OOP kavramındakiyle aynı; bir sınıfın instance'ı olup kod ve durumu içeriyor

→ Unique: UUID'ye sahip. Dünyanın herhangi bir yerindeki başka bir Worker, yalnızca ID'yi bilerek ilgili nesneye mesaj gönderebiliyor

→ Durable: Normal nesnelerden farklı olarak kalıcı durumu diske kaydedebiliyor. Buna erişip gecikme olmadan kullanabiliyor

  • İki ana özellik

→ Storage: Güçlü Transactional Consistency sağlıyor. Büyük bir veritabanını birden çok küçük birime ayırmak mümkün. Bakım yükü olmadan ölçekleniyor

→ Coordination: Serverless istekler genelde rastgele load balancing ile dağıtıldığı için iki istemcinin aynı worker'a bağlanması mümkün değildi, ama artık mümkün.

Yani gerçek zamanlı sohbet, ortak düzenleme, görüntülü konferans, Pub/Sub mesaj kuyruğu, oyun oturumları gibi yapılar artık serverless üzerinde uygulanabiliyor

WebSocket kullanmak için bu tür bir Coordination gerekliydi; DO sayesinde bu mümkün hale gelirken Workers için WebSocket desteği de başladı

  • Durable Objects, region kavramı olmadan küresel ölçekte çalışıyor (Cloudflare en yakın konuma yönlendirme ve yönetimi kendisi yapıyor)

Kullanım alanları

  • Killer app, büyük ölçekli kullanıcıların kullandığı gerçek zamanlı belge düzenleme işbirliği aracı gibi bir şey olabilir

  • Atomic Counter: Birden çok istemci aynı anda istek gönderse bile artış/azalış kaybı olmayan eşzamanlı sayaç

  • Sohbet: Çok büyük sohbet odaları bile birkaç yüz satır kodla mümkün ve IP başına rate limit de uygulanabiliyor

  • Alışveriş sepeti, oyun sunucusu, IoT Coordination, sosyal akış, yorum/sohbet widget'ları

Durable Objects'in geleceği: Gerçek bir Edge veritabanı

Şu anda kullanmak için beta daveti almak gerekiyor

Fiyatlandırma hâlâ değerlendiriliyor, ancak AWS DynamoDB veya Google Cloud Firestore'dan daha ucuz olması planlanıyor (PM Greg'in HN'de bıraktığı yoruma göre)

1 yorum

 
xguru 2020-09-29

Serverless şimdiye kadar çoğunlukla stateless şeylere uygulanıyordu; görünen o ki bunu koordinasyon gerektiren kısımları da kapsayacak şekilde daha da genişletiyorlar.

Bu aralar CloudFlare'in attığı adımlar gerçekten çok ilgi çekici.

CloudFlare, Workers Unbound serverless beta sürümünü başlattı https://tr.news.hada.io/topic?id=2543

CloudFlare'in Workers'ın cold start süresini 0'a nasıl indirdiği https://tr.news.hada.io/topic?id=2567

Cloudflare, kendi küresel ağını kullanan 24 saat canlı yayın TV hizmetini başlattı https://tr.news.hada.io/topic?id=2227