Cloudflare Durable Objects для начинающих

Создавайте координируемые приложения с состоянием на Cloudflare Durable Objects: от стабильной идентичности и хранения SQLite до сигналов, параллельности и WebSocket в реальном времени.

Cloudflare

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Постройте счётчики, комнаты и бронирования с согласованным общим состоянием. Durable Objects предоставляет каждой именованной сущности стабильную точку координации, последовательное выполнение и собственное хранилище SQLite.

Курс включает семь пошаговых работ и одну самостоятельную задачу исправления бронирований. Вы переходите от именованных объектов и сохранённой активности к параллелизму, сигналам и поведению WebSocket.

Чему вы научитесь

  • Направлять стабильные имена независимым объектам
  • Сохранять и получать активность комнаты
  • Координировать одновременные бронирования без превышения вместимости
  • Планировать истечение с помощью сигналов объекта
  • Рассылать обновления комнаты через WebSockets
  • Восстанавливать контекст соединения после пересоздания объекта
  • Диагностировать утечку идентичности между комнатами
  • Исправить переполненный семинар, сохранив действительные бронирования и итоги

Для кого предназначен курс

Разработчики Workers, желающие координировать приложения с состоянием и подключённых клиентов.

Предварительные требования: Завершите основы Workers, Connect LabEx to Your Cloudflare Account и базовые SQL-ключи, ограничения и запросы из D1 D01–D02.

Учебная среда: Каждая работа начинается в новой VM LabEx с вашим собственным независимо авторизованным аккаунтом. Вы создаёте уникально именованные Workers и пространства объектов SQLite, затем проверяете свидетельства выполнения и Dashboard. Ограниченные фиктивные упражнения используют Workers Free и учитываются в общих лимитах; купленный домен не нужен.

Часто задаваемые вопросы

Чем Durable Object отличается от обычного Worker?

Worker может направить запрос, а один именованный объект владеет точкой координации и постоянным состоянием сущности, например комнаты. Поэтому имена и маршрутизация влияют на изоляцию.

Будет ли проверяться одновременная работа?

Да. Работы бронирования проверяют вместимость и постоянные итоги при одновременных запросах. Корректность определяется инвариантом, а не тем, какой запрос пришёл первым.

Означает ли разрыв WebSocket потерю состояния?

Курс различает соединение клиента и состояние объекта и восстанавливает контекст соединения после пересоздания. Вы проверяете полученное поведение, не предполагая, что доказывает период простоя.

Как закончить упражнение?

Удалите только свои временные Workers и связанные пространства имён, подтвердите удаление при действующей авторизации и выйдите. Сохраните посторонние приложения и ресурсы аккаунта.

Преподаватель

labby
Labby
Labby is the LabEx teacher.