I don't claim to be a Lambda expert, but most of the "5 things you should know" kinds of posts are usually pretty simple. THIS post by @walezz is awesome -- especially the part on background code and Promise.all()
https://t.co/bd32I8dW96
Reminder: If you are profiling for a CPU bottleneck, DO NOT RELY ON JVM FLIGHT RECORDER METHOD PROFILING.
Not even a little bit.
Use `async-profiler` for profiling(`-e cpu,lock,alloc`), with `--jfrsync default/profile` for extra JVM/JDK events.
Using #AWS Lambda? Here are 5 of the most important things that improved my usage over time and that I wish I had known from the start!
#serverless#lambda
https://t.co/BB8vrsNj1A
@iximiuz Fair point! 👍 . I think it's very hard to reach that level of concurrency in practice for most apps (cause it means you have > 1k active connections at a single point in time) but still I do agree that it indeed might expose a drawback of this concurrency model if it happens
@iximiuz Well, the /{proxy} endpoint entirely delegates the routing to the underlying function which in this case you find yourself in the same situation as with containers: up to you / your framework to report those metrics : ) . So the situation is still not worsw I guess?
@iximiuz - hard to test and iterate on locally (biggest drawback)
- vendor lock in: very few stuff to reuse if you migrate off.
- More expensive at scale (even though you are paying for the serverless part of it)
- cold starts. Especiailly if you use a "heavier" runtime like the jvm
@iximiuz I find it honestly hard to defend containers vs api gw / lambdas in most of the situations. For me the main drawbacks of api gw / lambdas that makes hesitate sometimes are: