Skip to main content

Rivet Actors vs
Cloudflare Durable Objects

Cloudflare Durable Objects provide stateful serverless computing with vendor lock-in. Rivet Actors gives you the same capabilities as an open-source library that works with your existing infrastructure and technology stack.

Overview

Compare the two approaches and decide which is right for your project.

Rivet Actors

Rivet Actors is an open-source library that brings the actor model to your existing infrastructure. Build stateful, distributed applications with your preferred technology stack, deployed on your own infrastructure.

When to choose Rivet Actors

Developer-friendly experienceWhen you want an intuitive platform with high-quality documentation, mature local development experience, and in-depth observability in to your workloads
Works with your existing infrastructureWhen you want to use actors with your existing deployment process on Kubernetes, AWS, VPS, or any infrastructure
Technology flexibilityWhen you want to use your existing frameworks and libraries without platform-specific constraints
Provides monitoring and observabilityWhen you need built-in monitoring for actors that integrates with your existing observability stack
Rich ecosystem of integrationsWhen you want a comprehensive ecosystem with ready-to-use integrations for popular frameworks and tools

Cloudflare Durable Objects

Cloudflare Durable Objects provide stateful serverless computing that runs on Cloudflare's global edge network. Built on Cloudflare's proprietary platform, Durable Objects offer strong consistency and state persistence for JavaScript/TypeScript applications.

When to choose Cloudflare Durable Objects

Already using Cloudflare ecosystemWhen you're already committed to Cloudflare Workers and want stateful capabilities
JavaScript/TypeScript onlyWhen your team exclusively works with Cloudflare's limited JavaScript/TypeScript runtime and doesn't need access to the broader npm ecosystem
Don't mind platform constraintsWhen you're comfortable with Cloudflare's deployment process, monitoring limitations, and vendor lock-in
Prefer low-level primitivesWhen you want raw primitives and don't need a rich ecosystem of framework integrations

Feature Comparison

A detailed breakdown of capabilities across both platforms.

Feature
Rivet Actors
Cloudflare Durable Objects
Why it matters
Open Source
Open-source
Yes, Rivet is open-source with the Apache 2.0 license. View on GitHub.
No, Cloudflare is a closed-source, proprietary platform
Building your core technology on open-source software is vital to ensure portability and flexibility as your needs change
Infrastructure
Works with existing infrastructure
Deploy actors on Kubernetes, AWS, VPS, or any infrastructure
Locked to Cloudflare's infrastructure
Using your existing infrastructure avoids vendor lock-in and integrates with your current setup
Data sovereignty and VPC isolation
Full control over data residency and network isolation within your VPC
Data processed on Cloudflare's global network with limited control
Data sovereignty ensures compliance with data governance requirements and maintains complete network isolation
Works with existing deploy processes
Import the library and deploy with your existing CI/CD
Requires Cloudflare-specific deployment process
Keeping your existing deployment process reduces complexity and learning curve
Technology flexibility
Works with your existing technology stack and frameworks
Limited to Cloudflare's limited JavaScript/TypeScript runtime, not compatible with many npm packages
Technology flexibility lets you use your existing skills and codebase
Integrates with existing monitoring
Works with your existing observability stack
Limited monitoring options, mostly Cloudflare-specific
Integration with existing monitoring reduces operational overhead
Runtime
Actor support
First-class actor model with Rivet Actors library
Durable Objects for stateful workloads
Actor model enables scalable stateful applications with state realtime, persistence, and realtime
KV Persistence
Built-in KV storage for actors
KV supported for Durable Objects
Key-value storage enables persistent state without external dependencies
SQLite Persistence
SQLite support in preview
SQLite supported for Durable Objects
SQLite provides relational database capabilities for complex data models
Memory limits
Configurable memory limits based on needs
128MB limit for Durable Objects
Higher memory limits allow more complex stateful applications
Automatic connection handling
Optionally provides abstraction over HTTP, WebSockets, and SSE with intelligent failure and reconnection handling
Requires low-level implementation of connection management
Automatic connection handling reduces development time and improves reliability
Event broadcasting
Built-in event broadcasting to specific connections or all actors
Requires complex setup or third-party solutions like PartyKit
Native event system enables real-time features with minimal setup
Built-in scheduling
Powerful built-in scheduling system
Requires boilerplate on top of Alarms API
Native scheduling reduces complexity and improves reliability for time-based operations
Testing support
Full Vitest support with mocking and fake timers
Limited Vitest support due to custom runtime constraints
Comprehensive testing capabilities ensure code quality and reliability
Customizable actor lifecycle
Flexible draining mechanism with configurable lifecycle management
60s grace period
Customizable lifecycle management allows for graceful state transfers and prevents data loss
Control over actor upgrades
Full control based on your existing rollout mechanisms
Only allows controlling gradual deployment percentages, not specific Durable Object versions
Controlled upgrades ensure smooth transitions without service disruption tailored to your application's architecture
Actor creation with input data
Pass initialization data when creating actors
Cannot pass input data during Durable Object creation
Ability to initialize actors with data simplifies setup and reduces boilerplate
Actor shutdown control
Clean shutdown API for actors
Requires deleteAll with custom logic and error-prone boilerplate
Proper shutdown control ensures graceful cleanup and prevents resource leaks
Monitoring
Built-in monitoring for development and production
Custom monitoring required
Integrated monitoring simplifies operations and debugging
Logging
Suports your existing logging infrastructure
Provides no logging for Durable Objects
Built-in logging reduces setup time and operational complexity
Metadata access
Built-in metadata API
Custom implementation required
Direct access to metadata such as tags, region, and more simplifies management and deployment
Developer Tooling
State inspector
Built-in tools to inspect and modify actor state
No built-in state inspection tools
Ability to view & edit actor state in real time simplifies debugging and management
RPC debugger
Interactive RPC testing tools for actors
No built-in RPC debugging
Ability to test remote procedure calls to actors accelerates development and troubleshooting
Connection inspector
Real-time monitoring of actor connections
No connection visualization tools
Visibility into active connections helps diagnose client-side issues and monitor usage patterns
Actor listing and management
Browse and manage active actors with full interaction capabilities
Can list Durable Objects but cannot interact with them
Being able to list and interact with live actors enables debugging and operational management
Development Experience
Documentation
Comprehensive, developer-focused documentation
Fragmented and difficult to understand documentation
Clear documentation accelerates learning and implementation
Compatible with Docker Compose
Seamless integration with Docker Compose for local development
No Docker Compose compatibility
Integration with Docker Compose enables use with your existing development workflows and tools

Conclusion

While Cloudflare Durable Objects provides stateful serverless computing with vendor lock-in, Rivet Actors offers the same actor model capabilities as an open-source library that works with your existing infrastructure. Choose Rivet Actors when you want the power of actors without changing your deployment process, technology stack, or being locked into a specific platform.

Migrating from Cloudflare Durable Objects?

Our team can help make the transition smooth and seamless. We provide migration assistance, technical guidance, and dedicated support.

Infrastructure for software that thinks.

The next generation of software needs a new kind of backend. This is it.