Caisey Blog

Internal sysadmins · May 25, 2026

How Caisey's Cloudflare Workers + SQLite Durable Objects Architecture Delivers Sub-Second Command Round-Trips from Browser to Endpoint

Technical deep-dive into Caisey's edge-compute architecture: how Cloudflare Workers, Durable Objects, and SQLite session persistence cut command latency versus centralized RMM servers.
edge-computecloudflare-workersdurable-objectslatencymsp-architecturetechnical-deep-dive

Every millisecond of latency in a remote troubleshooting session compounds into technician frustration and longer resolution times. When you're waiting for a PowerShell command to return output from a endpoint in Melbourne while your RMM server sits in Dallas and your technician works from Sydney, those milliseconds become seconds—and those seconds become minutes of dead air on a client call. Caisey was built to eliminate this architectural waste.

The Problem with Centralized RMM Architectures

Traditional RMM platforms route every command through a single datacenter or a small handful of regional clusters. The path looks like this: technician browser → RMM web server → application server → message queue → endpoint agent → and back again. Each hop adds latency, and when those hops span continents, the round-trip time for a simple Get-Process command can exceed two seconds.

This isn't theoretical. A technician in Sydney connecting to an endpoint in Melbourne through a server in Dallas faces three long-haul network segments: Sydney to Dallas (~150ms), Dallas to Melbourne (~180ms), plus processing overhead at each layer. Even with optimized routing, you're looking at 400-600ms for the command to reach the endpoint and the same for the response to return. For interactive troubleshooting—where you're running dozens of commands, checking outputs, and adjusting based on results—this latency destroys flow state.

The single point of presence also creates reliability risks. When that Dallas datacenter has maintenance, routing issues, or capacity constraints, every technician and every endpoint feels it regardless of their actual geographic relationship.

How Caisey's Edge-Compute Model Changes the Topology

Caisey runs its control plane on Cloudflare's global network of Workers and Durable Objects. Instead of routing everything through a centralized server, the platform spins up compute and storage at the edge location closest to where it's actually needed.

Here's how a typical session flows:

  1. **Authentication at the edge**: Clerk handles identity verification at the nearest Cloudflare POP, not at a distant auth server.
  2. **WebSocket termination locally**: The technician's browser opens a WebSocket connection to a Cloudflare Worker in their region—Sydney, in our example.
  3. **Durable Object colocation**: When the technician selects an endpoint, Caisey instantiates or connects to a SQLite-backed Durable Object in the POP nearest to that endpoint's runtime. For a Melbourne endpoint, this means the Durable Object lives in a Cloudflare facility close to Australia.
  4. **Direct runtime bridge**: The Caisey runtime on the endpoint connects to the same regional Durable Object, creating a short, stable path.

The result: Sydney technician → Sydney Worker → Melbourne-adjacent Durable Object → Melbourne endpoint. The long Sydney-to-Dallas and Dallas-to-Melbourne hops disappear entirely. The Durable Object maintains session state in SQLite, so even if the WebSocket drops and reconnects, command history, pending operations, and conversation context persist without round-tripping to a central database.

Measuring the Difference in Practice

You can observe this directly. In Caisey's technician console, the command round-trip time is displayed for each executed instruction—typically 200-400ms for domestic-equivalent regions, under 600ms even for cross-continental pairs. This isn't synthetic monitoring; it's the actual time from button click to rendered output in your browser.

Compare this to what we see with traditional RMM polling models. Many platforms don't maintain persistent connections to endpoints at all. They poll every 30-60 seconds for task results, or they establish a relay connection on-demand when a remote session starts. TeamViewer and similar tools route through proprietary relay servers, which add their own traversal and queuing delays. The "sub-second" experience they advertise usually refers to session establishment, not interactive command latency.

For MSPs with distributed clients or distributed technicians, this architectural difference isn't marginal—it's categorical. A technician in London troubleshooting an endpoint in Edinburgh through a Caisey Durable Object in a UK POP experiences fundamentally different responsiveness than the same scenario routed through Amsterdam or Frankfurt because that's where the vendor's EU server happens to sit.

Why SQLite Durable Objects Matter for Session Integrity

The choice of SQLite within Durable Objects isn't just about latency; it's about session semantics. Each troubleshooting session gets its own isolated SQLite database that lives with the Durable Object for the session's lifetime. This means:

  • **Command history persists** even if the technician's browser refreshes or the endpoint runtime reconnects
  • **Approval prompts maintain state** without external database lookups—critical when a client needs to approve privileged access and you can't afford a 2-second state check
  • **Audit records write locally** and replicate asynchronously, so logging never blocks the interactive loop

Traditional RMMs typically store session state in a centralized SQL or NoSQL cluster. Every state transition—command issued, output received, approval requested—becomes a database round-trip. That central cluster becomes a bottleneck under load, and its geographic distance from the actual troubleshooting pair becomes unavoidable latency.

The Infrastructure as Product Differentiator

For architecture-curious buyers evaluating remote troubleshooting platforms, the question to ask isn't "where are your servers?" but "where does my session compute actually execute, and where does my session state live?"

Centralized RMM architectures—NinjaOne, Datto/Kaseya, N-able, and their predecessors—were designed when "the cloud" meant "our datacenter, accessible via internet." Their latency model assumes that a 500ms round-trip is acceptable because remote access was historically a last-resort alternative to on-site presence. Caisey's design assumption is different: remote troubleshooting should be the primary, fluid workflow, and infrastructure should make it feel local regardless of physical distance.

This matters most for global MSPs and for organizations with distributed technical teams. If your technicians cover clients across time zones, or if your own team works remotely from multiple continents, the edge-compute model isn't a nice-to-have optimization. It's the difference between a tool that feels responsive and one that constantly reminds you of its physical limitations.

Caisey doesn't expose the Cloudflare infrastructure directly to technicians—that's the point. The Durable Object spins up, the SQLite session initializes, the WebSocket connects, and you get a command prompt that responds like it's local. The architecture only becomes visible when you compare it to the alternatives and wonder why troubleshooting ever felt so slow.