Deploying 15 MB Node.js VMs Effortlessly to AWS(boxfuse.com)
boxfuse.com
Deploying 15 MB Node.js VMs Effortlessly to AWS
https://boxfuse.com/blog/nodejs-aws
3 comments
So, essentially microkernel for node? If so, any thoughts on joyents public rant about microkernels not being suitable for production?
As the ranter in question, a very important correction: my concerns were about unikernels, not microkernels. That these two are conflated is tragic (and ironic) because they actually live on opposite ends of a belief spectrum: unikernels believe that everything should be in the kernel for performance reasons; microkernels believe that essentially nothing should in the kernel for robustness reasons. Speaking personally, I am a microkernel believer (I worked at QNX back in the day and can tell you that microkernels are in production all around you and in safety-critical capacities) -- but I am (obviously) a unikernel skeptic.
Think of it as an ultra-minimal Linux system. Conceptually like a unikernel, but usable today with your application unchanged.
If I understand it right the magic sauce of Boxfuse is the minimization of the app, stripping it down from all the unneeded dependencies. Is this correct or are there other things that are difficult to replicate? Did anybody here already used it with Java?
Thinking about AWS Lambda, which is billed per time and per RAM, minimizing an application sounds good because less modules to load mean less RAM and less money.
Thinking about AWS Lambda, which is billed per time and per RAM, minimizing an application sounds good because less modules to load mean less RAM and less money.
Boxfuse founder and CEO here.
Your app is not modified. What is missing here is all the unnecessary baggage that comes with general purpose operating systems.
Your app is not modified. What is missing here is all the unnecessary baggage that comes with general purpose operating systems.
Any thought of supporting Django? Deployment is one of the more off-putting things there; looks like this approach could greatly simplify things.
19 MB with docker+alpine
https://hub.docker.com/r/dahlb/alpine-node/tags/
Update: 6.7MB when compressed https://github.com/mhart/alpine-node
Update: 6.7MB when compressed https://github.com/mhart/alpine-node
And a base AMI when running on AWS.