PageSourceSearch

https://lumenize.com/assets/js/07517c8d.4e3da81c.js

js lumenize.com collected 2026-10-02 23:04:16 UTC 4,555 bytes, 1 lines download raw bytes

1"use strict";(globalThis.webpackChunk_lumenize_website=globalThis.webpackChunk_lumenize_website||[]).push([[5776],{60916(e,t,a){a.r(t),a.d(t,{assets:()=>i,contentTitle:()=>s,default:()=>d,frontMatter:()=>l,metadata:()=>r,toc:()=>c});var r=a(96716),o=a(62540),n=a(43023);const l={title:"Cloudflare DO Facets in practice: cold-wake and boundary cost",slug:"cloudflare-do-facets-in-practice",authors:["larry"],tags:["architecture","cloudflare"],description:"Real numbers for hosting code as a Cloudflare Durable Object facet \u2014 cold-wake ~262 ms above DO baseline, warm boundary cost ~1.35 ms per call. Measured with a typia parse-validate fixture; the cost structure generalizes."},s=void 0,i={authorsImageUrls:[void 0]},c=[];function u(e){const t={a:"a",p:"p",...(0,n.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(t.p,{children:["Cloudflare's ",(0,o.jsx)(t.a,{href:"https://blog.cloudflare.com/durable-object-facets-dynamic-workers/",children:"Durable Object Facets"})," shipped on April 13, 2026[^beta]. Cloudflare's framing is that they're \"essentially free.\" That's accurate at the infrastructure layer \u2014 same V8 isolate as the parent DO, no extra billing line, no separate Worker. However, from the cold-wake and per-call latency perspectives, it's not zero, and I needed to know by how much."]}),"\n",(0,o.jsxs)(t.p,{children:["While building ",(0,o.jsx)(t.a,{href:"/blog/introducing-lumenize-nebula",children:"Nebula"}),", I wanted to host a per-tenant ",(0,o.jsx)(t.a,{href:"/blog/introducing-parse-validator",children:"typia parse-validator"})," close to each tenant's write DO. Facets were the obvious choice, but I wanted real numbers before committing. This post is what I measured: cold-wake contribution and warm RPC boundary cost. For the non-facets-related benchmarking results \u2014 throughput, gate semantics, and what I had to unlearn about Durable Objects under load \u2014 see the companion post: ",(0,o.jsx)(t.a,{href:"/blog/what-i-got-wrong-about-do-throughput",children:"What I got wrong about Durable Object throughput"}),"."]})]})}function d(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(u,{...e})}):u(e)}},43023(e,t,a){a.d(t,{R:()=>l,x:()=>s});var r=a(63696);const o={},n=r.createContext(o);function l(e){const t=r.useContext(n);return r.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:l(e.components),r.createElement(n.Provider,{value:t},e.children)}},96716(e){e.exports=JSON.parse('{"permalink":"/blog/cloudflare-do-facets-in-practice","editUrl":"https://github.com/lumenize/lumenize/tree/main/website/blog/2026-05-03-cloudflare-do-facets-in-practice/index.md","source":"@site/blog/2026-05-03-cloudflare-do-facets-in-practice/index.md","title":"Cloudflare DO Facets in practice: cold-wake and boundary cost","description":"Real numbers for hosting code as a Cloudflare Durable Object facet \u2014 cold-wake ~262 ms above DO baseline, warm boundary cost ~1.35 ms per call. Measured with a typia parse-validate fixture; the cost structure generalizes.","date":"2026-05-03T00:00:00.000Z","tags":[{"inline":false,"label":"Architecture","permalink":"/blog/tags/architecture","description":"System design, protocols, trade-offs, and implementation patterns"},{"inline":false,"label":"Cloudflare","permalink":"/blog/tags/cloudflare","description":"Cloudflare Workers, Durable Objects, and platform features"}],"readingTime":5.11,"hasTruncateMarker":true,"authors":[{"name":"Larry Maccherone","title":"Founder and CTO, Lumenize","url":"https://www.linkedin.com/in/larrymaccherone/","page":{"permalink":"/blog/authors/larry"},"socials":{"linkedin":"https://www.linkedin.com/in/larrymaccherone/","github":"https://github.com/lmaccherone"},"imageURL":"https://lumenize.com/img/larry.png","key":"larry"}],"frontMatter":{"title":"Cloudflare DO Facets in practice: cold-wake and boundary cost","slug":"cloudflare-do-facets-in-practice","authors":["larry"],"tags":["architecture","cloudflare"],"description":"Real numbers for hosting code as a Cloudflare Durable Object facet \u2014 cold-wake ~262 ms above DO baseline, warm boundary cost ~1.35 ms per call. Measured with a typia parse-validate fixture; the cost structure generalizes."},"unlisted":false,"nextItem":{"title":"Introducing @lumenize/ts-runtime-parser-validator: parse, don\'t just validate","permalink":"/blog/introducing-parse-validator"}}
1')}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.