From hearing the details it seems that there is no real limitation to what you can execute as long as it runs on the instance. I get the feeling that if you zipped up all of the parts of python or ruby you need to ru you could execute a script using either of them as long as you initiated it from your node script. The key word here is probably "support" and that may be more of an issue if you want to edit your scripts with their web IDE.
Django is the problem. Even if I don't trigger the database to connect, the startup costs are noticeable to validate models and load things that won't ever be used.
so maybe lambda its not suitable for things that are less than a few seconds.
I could write python with no django and try to structure things so they don't need database. but then I would have to take input from and put output data back to a queue of some sort.
>> A quick back-of-the-envelope test
and actually python on mine was even faster than node when both are doing nothing. so my assumption was wrong (but its based on mostly using django and all my node stuff is small servers and tools)
» time node noop.js
node noop.js 0.04s user 0.01s system 98% cpu 0.045 total
» time python noop.py
python noop.py 0.01s user 0.01s system 90% cpu 0.026 total
but importing significant numbers of libraries would be the real test.
the main benefits to lambda would still be:
- scaling for high demand
- no cost for idle time
and let's not worry about the micro pennies in startup times
I dont think so - the docs suggest you get a full Linux that your code runs on, not just a limited sandbox, one of the blogs mentioned running binary code. So I don't think it is being sandboxed at the language level. Especially as they talked about adding more languages soon.
(figured people would want to know this, and you have to scroll a ways to find out, so)