HPI Issue #3: Serverless vs Containers (Serverless Wins…Today)
Welcome to the third issue of High Performance Infrastructure. To receive future issues via email you can sign up below.
On August 16, the serverless app building agency Trek10 asked Twitter followers what kind of content they wanted the Trek10 studio to produce. One follower requested more serverless rap music. In response, Forrest Brazeal, a cloud architect at Trek10 said he would deliver on that request if it got over a hundred likes by the following Monday.
If Don’s tweet has a hundred likes by Monday, I will write and record a Serverless vs Containers Rap Battle. Do your worst… https://t.co/iO7i59IxIdForrest Brazeal (@forrestbrazeal) August 17, 2019
Sure enough, the tweet received all the love it needed to make this happen…
While containers put up a fight in the battle rap, it seems serverless won the battle by spitting out the following questions and statements:
- Why deploy a box when abstraction brings the action for a fraction of the cost?
- What do you need a server for? The value is in the clients.
- Are you building Pixar? Is your name John Lasseter? Then why do you need a server? Why do you need a service mesh? Why do you need ambassador?
- Remember Spectre and Meltdown? I slept all night. The cloud provider kept it tight.
- You can patch your runtimes and I’ll have happy fun times.
- I just wanna build more, that’s what I get billed for.
In honor of serverless winning the battle rap, in this issue we’re bringing you the best content from around the web about serverless.
The best serverless reads
The traits of serverless architecture by Wisen Tanasa
The writer attempts to create an unbiased view of serverless architectures. Below are some of his viewpoints mentioned in the article. (These should help balance out the win by serverless in the battle rap.)
- The learning curve for serverless architecture is less daunting than that for typical DevOps skills. That said, things like Infrastructure as a code, log management, and monitoring are still essential and can be more complex with serverless.
- While you have less operational overhead, in rare cases you need to manage the impact of an underlying server change. For instance, if your application relies on native libraries you’ll need to ensure they continue working when the underlying operating system is upgraded.
- While “denial of service” attacks rarely succeed due to the high elasticity of serverless you’re still vulnerable to “denial of wallet” attacks. This is where the attacker attempts to break your application by forcing you to exceed cloud account limits by hiking up your resource allocation.
- Implementing whole event observability that is complete, unsampled, and non-aggregated is the best way to monitor and debug solutions for serverless.
- Reasons organizations have sampled in the past include complexities, limitations, and cost of ingestion, as well as cost and efficiency of storage and retrieval. But serverless, streaming, and database technologies have minimized these problems overall.
- Kinesis and Kafka are readily available solutions to ingest and stream data into databases in efficient batches. Coupled with serverless compute, real-time streams of billions of records per month can be accomplished with a bill that’s only hundreds of dollars.
Other noteworthy serverless stuff
Migrating a Hugo static site to OpenFaaS by Matias Pan
It’s true: serverless isn’t just for web apps that require incredible elasticity. In this tutorial, learn how to use serverless for any static website built with the Hugo framework. You can also use the concepts here to deploy microservices, blogs, functions, batch jobs, and legacy HTTP servers.
Expanding serverless beyond functions by Ron Miller
The CTO of Lightbend, an educational resource for those building cloud-native applications, believes serverless’s ability to abstract away infrastructure could extend beyond functions.
Thanks for reading! If you recently came across another great piece of content related to serverless, please tweet it to us.