Using serverless requires us to change our mindset on how we build apps and requires us to unlearn things we learned building apps in the past. At AWS re:Invent I got a chance to do a VMware Code session and talk about how we took part of our ACME Fitness Shop and transformed it into serverless functions with AWS Lambda.
Serverless is a development model where developers focus on a single unit of work and can deploy to a platform that automatically scales, without developer intervention. That’s awesome, but is it cheaper to run a Serverless platform or does using Kubernetes work better? In this blog, I’m diving into some of the options you have with AWS Fargate and self-hosted Kubernetes. TL;DR Serverless is cheaper!
There are many predictions from market analyst firms on the size of the global serverless architecture market and how fast it will grow. The numbers range from $18B to $21.99B in the next few years with the compound annual growth rate (CAGR) in the double digits. But is serverless only a fancy name for products like AWS Lambda and Azure Functions?
The CTO of a company I have worked for used to say that services should be loosely coupled but tightly integrated. I didn’t realize until a lot later how true that statement is as you’re building out microservices. How those microservices communicate with each other has also changed quite a bit. More often than not, they send messages using asynchronous protocols. As an industry, we decided that this new way of building apps should be called “Event-Driven Architecture (EDA).
If you’re using AWS CloudFormation as your Infrastructure-as-Code, you can have those events show up in dashboards from Wavefront, so your entire DevOps organization now knows what happened and which CloudFormation stack to look at. This could save time while debugging and figuring out where the issues might come from. If you’re part of a DevOps team that deploys using AWS CloudFormation and you want insight into the deployment events.
In my talk “Duct Tape and String: Continuously Delivering Serverless Microservices” at swampUP 2019, I got to talk about some best practice for the project that got me excited about both serverless and K8s: OpenFaaS! For me that meant I got to combine a lot of the things I care about (Containers, Serverless, and Golang), while talking about the awesome possibilities that using Artifactory brings you.
Ever since I discovered Kubernetes, I’ve been looking at OpenFaaS to build and deploy serverless functions on top of it. So as I started building more and more functions to help the Developer Relations team at JFrog, I wanted to share how I use JFrog Artifactory and OpenFaaS together!
I’ve been playing with OpenFaas ever since I learned about Minikube a few years ago, so when one of my colleagues mentioned Google’s Distroless project I obviously needed to see if my Go projects could work using those images too.
Unless you’ve spent the last few months in outer space, or at the very least out of reach from the Internet, you’ve seen that serverless is one of the hottest topics when it comes to building apps. Over the last few months we’ve seen AWS announcing a ton of things at their annual user conference, Google announced support for Go in private beta and serverless containers in private alpha and even Gitlab announced some form of serverless support. With so many massive players it’s easy to forget smaller ones, but those smaller ones are quite often pretty interesting.
No matter the metric, “serverless” is definitely gaining interest. It’s the dream of every developer, supplying the ability to deploy services in the cloud in no time, automatically scale them, enjoy automatic management by a cloud provider—and, most important, keep it all cost effective! How does this dream become a reality? At TIBCO NOW we recorded this session which covers what serverless is all about and the benefits of running your apps in a serverless environment.