[{"data":1,"prerenderedAt":198},["ShallowReactive",2],{"DefaultLayouten":3,"language-blog-slug-edge-workers-on-the-rise-i18n-slugs":134,"language-blog-slug-en-edge-workers-on-the-rise":138},{"app":4,"menu":31,"footer":66},{"githubUrl":5,"youtubeUrl":6,"linkedinUrl":7,"phoneNumber":8,"emailAddress":9,"legal":10,"addresses":20},"https:\u002F\u002Fgithub.com\u002Fvoorhoede\u002F","https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCzHuhQVYFRixtQN2-swcuGg","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fde-voorhoede","+31 20 2610 954","post@voorhoede.nl",[11,14,17],{"title":12,"value":13},"KvK","56017235",{"title":15,"value":16},"BTW","NL851944620B01",{"title":18,"value":19},"IBAN","NL14TRIO0320142078",[21,26],{"address":22,"city":23,"googleMapsLink":24,"postalCode":25},"Koivistokade 70","Amsterdam","https:\u002F\u002Fwww.google.com\u002Fmaps\u002Fplace\u002FDe+Voorhoede+%7C+Front-end+Development\u002F@52.396847,4.8700823,17z\u002Fdata=!3m1!4b1!4m5!3m4!1s0x47c5e21d502d2d59:0xbf570944a96ebf45!8m2!3d52.347647!4d4.8502154","1013 BB",{"address":27,"city":28,"googleMapsLink":29,"postalCode":30},"Koornmarkt 22","Delft","https:\u002F\u002Fwww.google.nl\u002Fmaps\u002Fplace\u002FKoornmarkt+22,+2611+EG+Delft\u002F@52.0093477,4.3573054,17z\u002F","2611 EG",{"title":32,"callToActions":33,"links":39},"Site Menu",[34],{"id":35,"title":36,"link":37},"163140902","Contact",{"__typename":38},"ContactRecord",[40,46,51,56,61],{"id":41,"title":42,"link":43},"163140904","Impact",{"__typename":44,"slug":45},"PageRecord","impact",{"id":47,"title":48,"link":49},"163140905","Services",{"__typename":50},"ServiceOverviewRecord",{"id":52,"title":53,"link":54},"163140906","Cases",{"__typename":55},"CaseOverviewRecord",{"id":57,"title":58,"link":59},"163140908","About us",{"__typename":44,"slug":60},"about-us",{"id":62,"title":63,"link":64},"d6WdFJq2SOuc3dWtpibbXQ","Work at",{"__typename":44,"slug":65},"work-at",{"links":67,"copyrightTitle":93,"copyrightLabel":94,"copyrightLink":95,"privacyTitle":96,"privacyLabel":97,"privacyLink":98,"certificatesGrid":99},[68,71,74,77,82,85,88],{"id":69,"title":42,"link":70},"144185264",{"__typename":44,"slug":45},{"id":72,"title":48,"link":73},"144185265",{"__typename":50},{"id":75,"title":53,"link":76},"144185266",{"__typename":55},{"id":78,"title":79,"link":80},"144185267","Blog",{"__typename":81},"BlogPostOverviewRecord",{"id":83,"title":58,"link":84},"144185268",{"__typename":44,"slug":60},{"id":86,"title":36,"link":87},"144185269",{"__typename":38},{"id":89,"title":90,"link":91},"144185270","FAQ",{"__typename":44,"slug":92},"faq","Creative Commons licence and disclaimer","CC BY 4.0","https:\u002F\u002Fcreativecommons.org\u002Flicenses\u002Fby\u002F4.0\u002F","De Voorhoede privacy statement (pdf)","Privacy statement","https:\u002F\u002Fwww.datocms-assets.com\u002F6524\u002F1763455455-vh-isms-006-privacy-statement-de-voorhoede-en.pdf",[100,112,123],{"id":101,"image":102,"link":107},"Xq4bBfg_TZ6Fkjax9mkbLQ",{"url":103,"alt":104,"width":105,"height":106},"https:\u002F\u002Fwww.datocms-assets.com\u002F6524\u002F1687353463-b-corp-logo-black-rgb.png","B Corp logo",404,680,{"__typename":108,"id":109,"title":110,"url":111},"ExternalLinkRecord","fGW1ak8XQYaYDLkBSyncog","B Corp","https:\u002F\u002Fwww.bcorporation.net\u002Fen-us\u002Ffind-a-b-corp\u002Fcompany\u002Fde-voorhoede\u002F",{"id":113,"image":114,"link":119},"c5mCXRTiSraRIB25fw1p7Q",{"url":115,"alt":116,"width":117,"height":118},"https:\u002F\u002Fwww.datocms-assets.com\u002F6524\u002F1687353461-dda-boxlogo-black.png","Dutch Digital Agencies logo",627,480,{"__typename":108,"id":120,"title":121,"url":122},"P6Jh7B0cTv2cKyNEeKVWVQ","Dutch Digital Agencies","https:\u002F\u002Fdutchdigitalagencies.com\u002Fleden\u002Fde-voorhoede\u002F",{"id":124,"image":125,"link":129},"MT5SCyNxSTSr_v5eeATMZw",{"url":126,"alt":127,"width":128,"height":128},"https:\u002F\u002Fwww.datocms-assets.com\u002F6524\u002F1775730283-dnv.png","DNV logo",518,{"id":130,"title":131,"link":132},"BRtNB5HnT5i-7HkA8IYzBw","DIV",{"__typename":44,"slug":133},"impact\u002Fdigitale-producten-privacy-by-design",[135],{"locale":136,"value":137},"en","edge-workers-on-the-rise",{"page":139},{"slug":137,"i18nSlugs":140,"social":142,"title":143,"subtitle":79,"isArchived":147,"headerIllustration":148,"date":149,"authors":150,"introTitle":159,"items":160,"pivots":195,"relatedBlogPosts":196,"tags":197,"onMountedScript":153,"onUnmountedScript":153},[141],{"locale":136,"value":137},{"title":143,"description":144,"image":145},"Edge workers on the rise","How do edge workers help front-end developers? And what’s the latest state of edge workers using our favorite programming languages JavaScript and TypeScript?",{"url":146},"https:\u002F\u002Fwww.datocms-assets.com\u002F6524\u002F1638450211-afbeelding1.png",false,null,"2021-12-02T01:00:00.000+01:00",[151],{"name":152,"lastName":153,"slug":154,"image":155},"Selwyn","","selwyn",{"url":156,"alt":148,"width":157,"height":158},"https:\u002F\u002Fwww.datocms-assets.com\u002F6524\u002F1683534636-placeholder.jpg",1235,1646,"Selwyn, our in-house serverless expert, recently described how edge workers are on the rise. Besides building fast and accessible websites, he writes about the latest developments in web development on his own website. Below is a recap of his latest piece: Exploring the serverless edge.",[161,166,175,179,183,187,191],{"__typename":162,"id":163,"title":164,"body":165},"TextSectionRecord","81352062","The serverless trend","\u003Cp>\u003Cspan style=\"font-weight: 400;\">Cloud and serverless. The hottest terms of the last few years. Serverless can be summarised as outsourcing the infrastructure to a cloud provider. Where previously you had to provide your own server to run your software, suddenly someone else can do this for you. A newer trend is edge computing. This allows for even faster data processing by doing this close to the end user via mobile services, IoT, sensors or autonomous systems.&nbsp;&nbsp;\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan style=\"font-weight: 400;\">How do edge workers help us front-end developers? And what&rsquo;s the latest state of edge workers using our favorite programming languages JavaScript and TypeScript? Selwyn explains this in his latest post, which you can read on \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Fselwyn.cc\u002Fwritings\u002Fexploring-serverless-edge\">\u003Cspan style=\"font-weight: 400;\">Selwyn&rsquo;s personal blog\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"font-weight: 400;\">, or down below. \u003C\u002Fspan>\u003C\u002Fp>",{"__typename":167,"id":168,"image":169,"caption":153,"fullWidth":173,"captionPosition":174},"ImageRecord","81352063",{"url":146,"alt":170,"width":171,"height":172},"Server closet with green lights and lots of wires",908,510,true,"bottom",{"__typename":162,"id":176,"title":177,"body":178},"81352064","Exploring the serverless edge","\u003Cp>\u003Cspan style=\"font-weight: 400;\">Serverless functions have been around for years but their &lsquo;surroundings&rsquo; are still in flux. With a focus on developer experience: Firstly by making them easy to run and test locally by emulating the production environment. Secondly by integrating with Git, using automatic production and pull request deploys. Thirdly with service combinations, like static file hosting and analytics. These together make serverless functions more useful, but edge workers are starting to catch up.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan style=\"font-weight: 400;\">&nbsp;\u003C\u002Fspan>\u003Cspan style=\"font-weight: 400;\">Before diving in, let me clear up the two terms. With serverless functions I mean code paired with a runtime, both run on invocation. Think of services such as: Fn, AWS Lambda &amp; Google Cloud Functions. With edge workers I mean code that runs in an within a specific runtime, for now only the V8 engine. Think of services such as: Deno Deploy, Cloudflare Workers &amp; Netlify Edge.\u003C\u002Fspan>\u003C\u002Fp>",{"__typename":162,"id":180,"title":181,"body":182},"81352065","Chilly serverless","\u003Cp>\u003Cspan style=\"font-weight: 400;\">Cold starts are a major downside of serverless functions, you have to wait for the runtime to start and, depending on the language, parse the code. Even a serverless JavaScript function with only a few lines of code drags around 50ms - 100ms of cold start. This number can go up quick when pulling in dependencies. On top of that you get network latency, the farther away from a user request the longer the latency. Though this is not a serverless downside per se it often is in practice. Most serverless function offerings only allow you to deploy to one region.\u003C\u002Fspan>\u003C\u002Fp>",{"__typename":162,"id":184,"title":185,"body":186},"81352066","Ablaze edge workers","\u003Cp>\u003Cspan style=\"font-weight: 400;\">In contrast edge workers usually run close to a user request. And since the runtime is already running there is no cold or warm start. An invocation takes a few of milliseconds or less. The runtime API is comparable to Service Workers and Web Workers, embracing the Web APIs we love and hate. Whereas serverless functions have access to the underlying system and file system, edge workers communicate with web APIs like caches and events. As a result JS packages on npm that assume access to run in Node.js will not work. On top of that edge workers can not make raw TCP connections, so talking to a database like Postgres is out of question.\u003C\u002Fspan>\u003C\u002Fp>",{"__typename":162,"id":188,"title":189,"body":190},"81352067","The bleeding edge","\u003Cp>\u003Cspan style=\"font-weight: 400;\">But last week Deno Deploy, an edge worker service, published Beta 3. Actually adding support for raw TCP connection support! I expect other edge worker services to follow suit but until then there is Prisma Data Proxy in early access. An edge worker can connect to the Prisma Data proxy over HTTP and in turn the proxy, acting as a connection pool, talks to a database.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cspan style=\"font-weight: 400;\">With these changes it seems edge workers are catching up going beyond what a serverless function offers, exciting stuff!\u003C\u002Fspan>\u003C\u002Fp>",{"__typename":162,"id":192,"title":193,"body":194},"81352068","More blogs?","\u003Cp>\u003Cspan style=\"font-weight: 400;\">Want to read more about serverless? Check out our blog post on \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Fwww.voorhoede.nl\u002Fnl\u002Fblog\u002Fsvelte-kit-the-first-serverless-first-framework\u002F\">\u003Cspan style=\"font-weight: 400;\">serverless framework Svelte\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"font-weight: 400;\">. Or see how \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Fwww.voorhoede.nl\u002Fnl\u002Fblog\u002Fcorona-proof-it-architecture\u002F#corona-infection-radar-overloaded\">\u003Cspan style=\"font-weight: 400;\">cloud functions are a solution for overloaded servers\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"font-weight: 400;\">. More blog posts by Selwyn? In earlier blog posts you can find \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Fselwyn.cc\u002Fwritings\u002Fyour-own-secure-linux-box\">\u003Cspan style=\"font-weight: 400;\">how to set up a secure Linux server\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"font-weight: 400;\"> \u003C\u002Fspan>\u003Cspan style=\"font-weight: 400;\">and \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Fwww.voorhoede.nl\u002Fnl\u002Fblog\u002Fsuper-fast-npm-install-on-github-actions\u002F\">\u003Cspan style=\"font-weight: 400;\">how to install npm on Github Actions\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"font-weight: 400;\">.\u003C\u002Fspan>\u003Cspan style=\"font-weight: 400;\">&nbsp;\u003C\u002Fspan>\u003C\u002Fp>",[],[],[],1776256145333]