7 điểm bởi xguru 2020-09-29 | 1 bình luận | Chia sẻ qua WhatsApp
  • Unique Durable Objects dành cho serverless

→ Objects: đúng theo khái niệm OOP, là instance của class, bao gồm mã và trạng thái

→ Unique: có UUID. Từ các Worker khác trên toàn thế giới, chỉ cần biết ID là có thể gửi message tới đối tượng đó

→ Durable: khác với object thông thường, có thể lưu trạng thái bền vững trên đĩa. Truy cập và sử dụng mà không có độ trễ

  • Hai tính năng chính
Quảng cáo

→ Storage: cung cấp Transactional Consistency mạnh. Có thể chia một DB lớn thành nhiều đơn vị nhỏ. Mở rộng mà không có gánh nặng bảo trì

→ Coordination: các request serverless thường được load balancing ngẫu nhiên nên trước đây hai client không thể kết nối tới cùng một worker, nhưng giờ thì có thể.

Tức là giờ có thể triển khai trên serverless các ứng dụng như chat thời gian thực, chỉnh sửa cộng tác, họp video, hàng đợi message Pub/Sub, session game

Muốn dùng WebSocket thì cần kiểu coordination này, và nhờ DO mà điều đó trở nên khả thi nên Workers cũng bắt đầu hỗ trợ WebSocket

  • Durable Objects không có khái niệm Region mà hướng tới toàn cầu (Cloudflare sẽ tự động chuyển tới vị trí gần nhất và quản lý)
Quảng cáo

Ứng dụng

  • Ứng dụng sát thủ có thể sẽ là các công cụ cộng tác chỉnh sửa tài liệu thời gian thực cho lượng người dùng rất lớn

  • Atomic Counter: bộ đếm xử lý đồng thời không bị mất lượt tăng/giảm dù nhiều client cùng lúc gửi request

  • Chat: ngay cả phòng chat cực lớn cũng có thể làm được chỉ với vài trăm dòng code, đồng thời có thể rate limit theo từng IP

    Quảng cáo
  • Giỏ hàng, game server, điều phối IoT, social feed, widget bình luận/chat

Tương lai của Durable Objects: cơ sở dữ liệu Edge thực thụ

Hiện tại phải nhận được lời mời beta mới có thể sử dụng

Giá vẫn đang được cân nhắc, nhưng theo một bình luận của Greg, PM của dự án, trên HN thì dự kiến sẽ rẻ hơn AWS DynamoDB hoặc Google Cloud Firestore

1 bình luận

 
xguru 2020-09-29

Serverless từ trước đến nay chủ yếu được áp dụng cho các thứ mang tính stateless, và giờ có vẻ đang được mở rộng thêm để bao gồm cả những phần cần coordination.

Dạo gần đây, những bước đi của Cloudflare thực sự rất thú vị.

CloudFlare, bắt đầu beta serverless Workers Unbound https://vi.news.hada.io/topic?id=2543

Cách CloudFlare đưa thời gian cold start của Workers về 0 https://vi.news.hada.io/topic?id=2567

Cloudflare ra mắt dịch vụ TV phát sóng trực tiếp 24 giờ sử dụng mạng toàn cầu riêng của mình https://vi.news.hada.io/topic?id=2227