4 ms·
I think in the longer run, WASM might displace a lot of both in practical terms.
by tracker1 3y ago
I think in the longer run, WASM might displace a lot of both in practical terms.
- ehutch79 3y agoWhy would wasm replace containers? If you're going to run a binary why not just compile it for the local system? We've always had 'compile once, run anywhere' but there's always been caveats and gotchas.
- bombela 3y agowasm targets the wasm runtime Virtual Machine (ie: a JavaScript VM). Offering fine grained isolation compared to virtualizing the whole operating system. edit: don't shoot the messenger. I was merely highlighting the main difference between native and webasm in the context of the discussion.
- meepmorp 3y agoYou could say the same thing for anything that targets JVM or CLR, and they're far more mature than any JS runtime.
- outworlder 3y agoOr even Lua, which is trivial to sandbox.
- skybrian 3y agoSomething still compiles a WASM binary for the local system. Possibly, being able to optimize the WASM without recompiling it from source might be a win? Not needing separate binaries for ARM and x86 is nice, so it should run on a Mac more easily. Also, it runs on an edge server or in a browser, even on a phone, if you care about that. I don’t think it will replace Docker files since they let you package up such a wide variety of existing server software and WASM is more limited. But if your software does compile to WASM then maybe you don’t care about that. I think of WASM more like a plugin format, but I expect there will be a lot of engineering effort put into optimizing it, like happened with V8 for JavaScript. Not all web standards win, but betting against one that’s well-established and has a lot of support seems like a mistake.
- wongarsu 3y agoFor serverless (as in AWS-lambda-like) I agree. In that usecase WASM provides a better security barrier than containers, with faster cold-start time (which is really important for the scaling promise of these services). For the stuff people run on their Kubernetes clusters I have more mixed expectations. Containers are more universal, but I can totally see a microservice architecture running as a lot of WASM runtimes with a handful of containers.
- cogman10 3y agoParticularly in the case of Amazon lambdas, those are running in VMS already (firecracker). Why wouldn't you skip the VM and use a static binary from rust instead?