An interesting trend is emerging in the world of cloud computing: non-cloud native technologies are growing in popularity while cloud native technologies are decreasing in popularity. This is according to the December 2021 “State of Cloud Native Development,” released by the Cloud Native Computing Foundation (CNCF), developed in conjunction with research firm SlashData. This report reflects the change in use of various cloud-related technologies by the 6.8 million cloud native developers across the globe.
In the realm of non-cloud native technologies, the report shows Kubernetes is growing in popularity. While overall awareness of Kubernetes is not high among cloud engineers (according to the report, only 31% of backend cloud developers used Kubernetes in the past year), the number of engineers who use Kubernetes is increasing, up 4% over the last 12 months.
Meanwhile, use of serverless computation—a cloud native technology—by the same set of backend cloud developers has dropped from 36% to 33% over the last 12 months. This is even more pronounced among edge developers, whose use of serverless computation has dropped from 54% to 48% over the same period.
These numbers do indicate that Kubernetes still has a ways to go until it’s fully adopted, and serverless computation is still quite popular. But a 4% increase in Kubernetes usage and a 3% drop in serverless usage in just 12 months is significant.
Serverless does not replace traditional server computation
For anyone who has followed my past articles, books, and presentations, this shouldn’t come as a surprise. I’ve long believed that technologies such as Kubernetes are much more significant to the world of modern, cloud-enabled applications than technologies such as AWS Lambda. Both technologies enable microservice architectures, but the encouraged prolific use of serverless computation far outweighs its advantages. Many people—often encouraged by the cloud providers themselves—have touted serverless computation as a replacement for traditional computation. It is not. Serverless computation technologies provide incremental benefits in certain specific areas, but it should not be used as a widespread replacement for traditional server computation.
More from Lee Atchison:
- The 3 Scariest Mistakes Companies Make in the Cloud
- 8 Things You Don’t Know About Architecting Your Business Infrastructure for Scale
- The Great Serverless Debate, Redux [Modern Digital Applications podcast]
Serverless technologies, such as AWS Lambda, are great tools that do certain things really well. But the problem arises when you attempt to build your entire application using serverless computation technologies. I can’t tell you how many times over the years I’ve had people express how proud they were of their latest application built solely using serverless. However, in my opinion, this is not a wise use of this technology. This new CNCF report is evidence that people may be starting to realize this.
Note that this viewpoint focuses specifically on serverless computation services, such as AWS Lambda—not on non-computation serverless services, such as Amazon DynamoDB or Amazon S3. I am a huge believer in these other serverless cloud native technologies, including those two data storage solutions.
What’s driving the drop in serverless?
What is the real meaning of the drop-off in support for serverless computation? The CNCF report theorizes cloud lock-in as the primary driver. I agree with that assessment, but I also believe there is growing acceptance that serverless isn’t the silver bullet solution it has been sold as. Serverless computation has its downsides, including in performance and cost, and those downsides are problematic for most application use cases.
However, the cloud lock-in issue is a real concern for many companies, and maintaining a more cloud-neutral approach for generic cloud applications is advantageous. This is the traditional multi-cloud model that has been recently touted under the new title of sky computing—generic, vendor-agnostic APIs for cloud vendors. I will be writing more about this trend in the future.
However, I still believe there is a strong need for polycloud architectures—cloud architectures that make use of multiple cloud providers, each providing a specialized set of services based on their particular cloud specialties. This is especially true in advanced cloud applications, such as sophisticated data modeling, machine learning, and artificial intelligence use cases. Unfortunately, this CNCF report doesn’t touch on these trends.
For that, we’ll just have to wait and see.
DON’T MISS: Kubernetes Adoption Up, Serverless Down, Developer Survey Says—Paul Krill at InfoWorld
Image credit: TheDigitalArtist via Pixabay.