Let me try to understand this "Edge" thing:

    - The user sends an HTTP request to somesite.com
    - Their DNS query for somesite.com gets resolved to some datacenter near them
    - The HTTP request arrives at the datacenter where the PHP in WebAssembly is executed at half the speed of native PHP
    - The PHP in Webassembly sends database queries to a central DB server over the internet
    - The PHP in Webassembly templates the data and sends it back to the user
How is that faster than resolving somesite.com to the central server, sending the HTTP query to the central server where PHP runs at full speed and talks to the DB on the same machine (or over the LAN)? Even if PHP ran at full speed at the "Edge", won't the two requests over the internet

    user --1--> edge PHP server --2--> central Db server
take longer than the one http request when the user connects to the central server directly?

   user --1--> central PHP+DB server
In reality, the PHP script on the "Edge" server probably makes not one but multiple queries to the DB server. Won't that make it super slow compared to having it all happening on one machine or one LAN?
Given that we run PHP on the edge, what is the point of running the PHP interpreter on top of a WebAssembly interpreter (Wasmer) instead of just running the PHP interpreter directly?

The latter will always be faster.


>> Ask HN: What are your predictions for 2024?

> Server-side WASM takes off with the re-implementation of PHP, Ruby/Rails, Python, and others, and a WASM based virtual server (shell, filesystem, web server, etc..) Cost more but has better security for both the host and user.

Guess I was wrong about it costing more?

> … we can run PHP safely without the overhead of OS or hardware virtualization.

But it only runs at half the speed of PHP, so you need more resources.

I think this will face the same problems as Next.js edge runtime: your database cannot be moved to the edge
I'm still trying to understand what this does and what's the use case. Is the "edge" a server? The browser? Why should I compile WordPress or Laravel to wasm?
Can someone ELI5 what is does "edge" computing means?

The way I understand it is that is moving some operations closer to the client to avoid bandwidth costs and improve performance.

I thought of the Tesla car computer as edge computing, as it does a lot of processing within the car that would otherwise add latency and reliance on a internet connection.

But for web browsers? Going to some websites?

What sort of apps need this functionality?

Seems like over-engineering, so I'm looking for someone to explain me.

Trying to understand better the solution. Why isn't it possible to restrict the application via process isolation (nsjail, cgroups, docker...) and wasm is needed instead?
This looks interesting, but as a feedback, I found the copy a bit repetitive and lacking substance.
Can i do it on my own hardware?
Please stop calling it "at the edge." You have seven locations all in highly developed Equinix datacenters.

Edge means getting embedded into ISP networks, cell towers, smaller metros, etc.

Whereby fast is "About half the speed of native PHP"
This is trying to solve a solved problem with lots of difficult technology that doesn't apply here. Most of the PHP websites are WordPress. The solution to have a speedy WordPress site is to compile it to static HTML. Calls to the server should happen with JavaScript. The server will always remain relevant as WordPress uses a Database and thus the "Edge" makes no sense here.