Benefits of Serverless Computing - GCP
Derek Winchester
Enterprise Strategic CTO Leader | Media & Entertainment Thought Leader | Former CCIE Advisory Council member
Network engineers, cloud engineers and developers, and all those in between. In the next couple of weeks, I will start showcasing tools and application offerings that not only enhance how you deploy code, but also showcase what the future of development will look like.?Always look at the cloud!!!!!!
In 2020, Google released a wide range of applications including infrastructure, application management and data management. What does this mean to developers?
For developers, the release of Google Clod Run couldn’t have come at a better time. In addition to Google App Engine and Cloud Functions, they can now use severless technology to develop and deploy apps on Google Cloud. We’re going to look at the three severless offerings by Google and when to choose one over the other.
What is the Main Benefit of Severless Computing?
The main benefit of severless technology is that it enables developers to build more customer-oriented and intuitive apps because it enables concentrate on the most important aspect-writing the code. The other aspects of the project such as deployment, maintenance, and scaling are handled by the vendor.
As such, severless computing comes in handy for?use in:
??????????HTTP applications
??????????Web and mobile backends
??????????Real-time data processing
The three main cloud offerings by Google Cloud are Cloud Run, Cloud Functions, and App Engine. We’re going to look at these individually to see when to choose one over the other.
Google Cloud Run
Also called severless containers is the latest severless offering by Google. Unlike other severless computing technologies that use functions for deployment, Cloud Run enables developers to write code in whatever programming language they are comfortable with. It is then ran by invoking a HTTP request.
Google’s Cloud Run offers the same benefits as other severless technologies including:
??????????Code can be written in any language
??????????The architecture is handled by the vendor
??????????Pay-as-you-go model
??????????Auto scaling
With all these benefits, developers can use Google Cloud alongside tools that they are already familiar with to develop and deploy applications seamlessly.
Google Cloud Functions: Severless Functions
Unlike Google Cloud Run that runs by invoking a HTTP request, Google Cloud Functions runs codes as functions. This means that complex functions can be broken down into simple solutions that are easily implementable. Google Cloud functions can be called via a HTTP request or through background events.
Consequently, Cloud Functions supports code written in specific programming languages. Also, the code must be written as functions to run. Some of the supported languages are JavaScript/Node.js, Python 3, or Go runtimes.
Google App Engine
Google App engine provides the infrastructure to develop and deploy web and application backends. While Cloud Run and Cloud Functions can be used to?develop standalone applications, Google App Engine is suitable for developers who want to build severless applications with multiple functionalities.
When using this particular?offering, the developer deploys their code on Google and pay for the amount of resources they use. Google provides two App Engine environments to run the code. For applications that scale rapidly, Google recommends that?developers use the standard environment?and the code used should be supported by the App Engine.
On the other hand, the App Engine Flexible Environment should be used for applications that receive more traffic, ones that are built with non-supported programming languages.
Deciding Between Cloud Run, Cloud Functions, and App Engine
Severless technology is preferred because it’s used to develop and deploy applications without worrying about the infrastructure which is handled by the vendor. Some good examples include:
??????????Building an application prototype
??????????Auto scaling an application fast
领英推荐
??????????Using background events to run an application
Some of the?things to look out for when choosing amongst the three Google Cloud offerings include:
??????????Cloud Run or Knative may work best when packaging code in Docker containers or running Kubernets clusters.
??????????Cloud Functions works best when running requests without containers or running code in real-time events
??????????Consider using App Engine for entire applications with multiple functionalities
Advantages of GCP Serveless Computing
GCP serveless has several advantages to the developers. They include:
1. Enables building of full stack severless apps
GCP architecture provides developers with the flexibility to deploy their code either as a source code or containers
2. Write code the way you Want
The GCP platform enables developers to write their code in any language that they are comfortable with. It also comes with the associated libraries and frameworks.
3. Easy Severless Computation
The developer is only responsible for ensuring the code is correct. After that, they leave everything to the Google Cloud to configure, provision, load balance, and sharding. This also provides the flexibility to the developer to concentrate on putting out a high-performance and intuitive app.
4. Run the Workload Anywhere Thanks to GCP
The GCP platform enables development of apps that are platform-independement meaning they can be run on any platform and provides consistence developer experience. This happens courtesy of Knative which supports multi-platform running of apps.
5. Ease of Deployment
When using the GCP platform, complex problems are broken down into simple functions that are easier to implement. This enables faster deployment of apps, which in turn,?hastens the deployment of code and results in apps being completed within a short time.
6. Built-in Capability for Logging, Monitoring, and Debugging
Thanks to Google Stack Driver, it’s easy for developers to log, monitor and debug apps
7. Scales Automatically
Every developer makes an app in the hope that it will be received well. When this happens, you’ll need to scale the app to handle the increase in traffic. Google Cloud Serverless function scaling hassle-free because the vendor handles all the functions.
This means that you can make decisions on the go because you don’t have to purchase a certain amount of resources.
8. Connects to Other Services
Supports connection to other 3rd party cloud solutions which enables faster implementation of the source code to a completed app.
9. Improved Geolocation
Thanks to the uptake of technology in particular the internet, the world has become a global village. There is a need now more than ever for developers to create apps that reach a larger geographical location. For this to happen, it’s dependent on network latencies.
In Conclusion
As a developer, serverless computing has many benefits. It not only helps save on administration costs, but also results in shorter development cycles. Additionally, it helps developers focus on making user-friendly apps. The most notable?benefits include easier full-stack scalability, prevalence in DevNet / DevOps, more streamlined deployment, and apps that are proactive and platform-independent.
Senior Technology Leader | DevOps Pioneer | TEDx Speaker | International Keynote Speaker | Technical Author | DevNet Expert #20220005
3 年Always motivating and inspiring brother!
CCIE #11572, DEVASC, DevNet Class of 2020, #Init6 Member, Cisco Champion 2020-2021 and 2021-2022
3 年Love your work Brother - looking forward to the next session on Saturday! ??
Network Engineer | Cloud Engineer | Cloud Network Engineer | Technical Support Specialist | Network Support Engineer | Cloud Support Engineer
3 年Thanks for sharing
Creative ? Empathetic ? Intuitive ? Motivator
3 年Derek, thank you for sharing!