GCP Architecture: Web Application (Get Cooking in Cloud)
Articles,  Blog

GCP Architecture: Web Application (Get Cooking in Cloud)

Welcome to “Get Cooking in Cloud,” where
we share the best recipes to apply in your cloud kitchen. I’m Priyanka Vergadia. And in this episode, we will
talk about creating websites on Google Cloud. [MUSIC PLAYING] If your business revenue
and customer satisfaction depends on the availability and
scalability of your website, then you are at the right place. In this episode, we will present
four reference architectures that let you scale small or go
large depending on your needs. So let’s dive in. At a high level, there
are four different recipes to build websites. Depending on where
you are in your cloud journey, your business
needs, and the maturity of the development and
infrastructure teams, one of these will
fit your needs. Let’s see how. Static websites
are a good option for sites like blogs,
where the page rarely changes after it
has been published, or where there isn’t any
dynamically generated content. All you need to set up a
static website on Google Cloud is Google Cloud Storage bucket,
connect it to your domain name, and that’s it. Pretty easy, right? Now, as your business
starts to mature and customers are
interested in buying things from your website,
you might need to generate dynamic content
and maybe enable payments. But if your company
is still small, maybe you want to be
able to grow your website without worrying
about scaling it based on the increase in demand. In such a scenario,
we recommend that you use Google Cloud’s managed
and serverless offerings like App Engine or
Cloud Run so you can focus on delivering
features and let Google worry about operating
and managing the infrastructure. This recipe provides
a wide range of features that make
scalability, load balancing, logging, monitoring,
and security much easier than if you had to build and
manage the website yourself. For example, when
you use Cloud Run, you can code in any
programming language, because your application
is deployed as a container, and Google will seamlessly
launch and scale your application for you. So give it a try. Now, for websites with
higher complexity, you probably want more
options and control than a managed platform offers. Whether it’s configuring your
servers or virtual machines, or if it’s a need for a
specific memory, SSDs, and GPUs, we recommend this third recipe– Compute Engine. Compute Engine provides a
robust computing infrastructure, but you must choose
and configure the platform components
that you want to use. Well, Google ensures that
resources are available, reliable, and easy to use, but
it’s up to you to provision and manage them. The advantage here
is that you have complete control of the systems
and unlimited flexibility. The easiest way to deploy a
complete web-serving stack on Compute Engine is by using
Google Cloud Marketplace. With just a few
clicks, you can deploy any of the over 100
fully realized solutions. For a more detailed
explanation on how to setup Compute Engine to
serve scalable and resilient websites, stay tuned
for upcoming episodes. Finally, for a larger business
with more developers and more complicated problems,
we recommend you use this fourth recipe and
containerize your applications. You will notice that it becomes
really hard to manage feature rollouts if the website
is one big monolith, which makes it difficult to keep up
with the increase in demand and pace of business. Containerizing web applications
provides four key advantages. First is
[? compartmentalization. ?] As your apps design
becomes more complex, containers are a good fit for
service-oriented architecture, including microservices. This supports scalability. Second is portability. A container has everything
it needs to run. Your app and its dependencies
are bundled together. This facilitates the
portability and fixes the, “it works on my machine” problem
that many developers have. The third is rapid deployment. When it’s time to
deploy, your system is built from a set of
definitions and images so the parts can be
deployed quickly, reliably, and automatically. Compared to virtual
machines, containers are typically smaller
and deploy much quicker. Using Container to
deploy web apps on GKE has further advantages
because one, container orchestration
is built in, two, Google Cloud offers
Container Registry, which is a private storage for
container images, and three, you can easily use the other
components of Google Cloud Platform in your architecture. Using this
container-based recipe makes sense if you have
a complicated website with multiple different
moving pieces which are better off in separate
services for easy management. That’s all for today on
“Get Cooking in Cloud.” Whether you’re a
small blogger looking to grow your community or a
huge multiscale e-commerce site, hopefully, you’ve cooked
up something great. Join us next time,
because we will share the recipe to host a
static website on Google Cloud. If you would like to
see more such content, don’t forget to like and
subscribe to our channel. [MUSIC PLAYING]


Leave a Reply

Your email address will not be published. Required fields are marked *