646 karma · joined June 10, 2014
You handle the "timed out right as next request comes in" case by memoizing the connection in a variable and checking if it's null in the handler. If it is, re-establish the connection.
> The code creates a MySQL connection during each invocation.
This is not a correct implementation for Lambda.
You shouldn't recreate a connection on every invocation. Instead, create your connection outside of your handler code. Then each invocation of a warm container will re-use the same handler. (1)
This will help cut down on cold start time, as well as help manage running out of connections.
You should limit your maximum number of concurrent invocations to be equal to the limit of your database threadpool. This is all in their documentation, as well as several blog posts. (2, 3, 4)
[1] https://docs.aws.amazon.com/lambda/latest/dg/services-rds-tu...
[2] https://www.jeremydaly.com/reuse-database-connections-aws-la...
[3] https://medium.com/faun/reusing-connections-lambda-functions...
It'd be neat if there was a button here that would allow a user to subscribe with Prime; I'm sure these streamers would love that.
Are there issues running java using serverless? I've worked with a number of enterprises using lambda and java. Seems to be fine ¯\_(ツ)_/¯ YMMV
Serverless Framework deploys are now less than three seconds. It's almost exactly like `run watch` now!
I deploy to a dev AWS account, then a staging AWS account, and then promote to prod out of github.
Check it out: https://github.com/serverless-components/
In fact, I can't imagine many car purchase decisions boil down to "Camry vs Model 3".
I don't think fuel economy is the reason people purchase a Tesla. The Model 3 beats the Camry on cool-points alone.
Elevator pitch from `rational.markdown`
GoatCounter aims to give meaningful privacy-friendly web analytics for business purposes, while still staying usable for non-technical users to use on personal websites. The choices that currently exist are between freely hosted but with problematic privacy (Google Analytics), hosting your own complex software or paying $19/month (Matomo), or extremely simplistic "vanity statistics" (Fathom).
GoatCounter attempts to strike a good balance between various interests. Major features include a free hosted version so people can easily add analytics to their personal website, an easy to run hosted option, an intuitive user interface, and meaningful statistics that go beyond "vanity stats" but still respect your users' privacy.
The person earning 150% more than _them_ is coveting the latest Bell Jetranger, or Gulfstream G700.
The obsession for more is the same at all levels.
> Got an awesome internship at an interesting company? Well, it wasn’t FAANG, so who cares? Got a FAANG internship? Well it wasn’t one of the good FAANGs, so if you really think about it, you really didn’t accomplish anything. Got into a “Good FAANG”? Well, the other intern works on his own startup idea when he goes home. Why aren’t you working on your startup idea? Do you even have a startup idea? Are you even trying?
It's absolutely not limited to new engineers. Take a look at the replies to the "Levels.fyi Annual Report" here on HN.
> You can't move to the US/SF/NYC? Good luck eeking out a living. You didn't get an offer from a FAANG? Well, you don't really belong in the bay area then. You got a FAANG offer but you didn't negotiate 400k+ total comp? Good luck ever getting a raise. You made it to the top of your salary band? Well, they'll never move you up, better plan your exit now.
The tech rat race mentality is very real and very pervasive.
But in general - Do people manually deploy MySQL, Postgres, or MariaDB on EC2 servers? No, (most) people use RDS. The servers are still there, but the management is less.
Do people manually deploy RabbitMQ? No, (most) people use SQS.
Cloud providers have been working out of the same playbook for years - provide low-level compute, watch what people build, and create managed services which solve common use cases. Developers love these services, because it's less infrastructure to be on call for, and they can build products faster.
Lambda and Serverless represents the inevitable conclusion of the natural evolution of the cloud. Parts of it are still painful, but undoubtably it's getting easier and more capable.
I don't personally mind the Chrome Web Store default.