Google Cloud Platform Flashcards
What does “Compute” refer to in cloud technology?
Compute
Compute refers to cloud resources, typically server CPUs, to run your code in the cloud.
What are “Load Balancers”?
Load Balancers
Load balancers redirect user traffic to different compute instances, so an overall system can take on more than one server’s capacity.
This decreases the stress on a single server and increases a system’s total capacity. This helps improve responsiveness and availability of applications.
Because load balancer can redirect traffic, it also prevents a single server from becoming a single point of failure.
Load balancers can redirect traffic to their many servers using different strategies. Name a few of these.
Round Robin
Least Connections
Least Response
Least Bandwidth
Chained Failover
IP Hash
Discuss “Serverless Compute” and provide an example
Serverless Compute
Event-driven, serverless computing runs stand-alone on a cloud provider’s servers without managing servers. In a way, this is a throwback to the mainframe model where many clients would submit code to be run, but not have control over when exactly the mainframe would run their code.
There’s no need to worry about hardware or scaling. Providers charge per execution, based on actual computing resources used. When analyzed at a per unit of time scale, serverless computing is usually more expensive than dedicated server resources.
A common use case of serverless computing is when an application’s traffic pattern is irregular or unstable. For example, look at an NFL scoring system. Users tend to look up the score of a game most often when the game is taking place. Having a dedicated server running on most non-game days is not worth the money. In turn, serverless computing would be a good opportunity to only compute information when it is requested.
What are “Containers”?
Containers
Containers allow your code to run within an isolated environment, making your code and compute instances machine agnostic. Through this, containers provide portability and security.
What is Object/Block Storage and what is the benefit to a user?
Object/Block Storage
Object and block storage systems allow clients to store immense files on the cloud without having to worry about maintaining the file or a file system. Cloud providers internally store the file and generate a unique identifier for the object, which is later used to retrieve the object from the cloud provider.
What is Orchestration Service?
Orchestration Service
Orchestration services allow for the rapid progression and stable support of web applications. These services automatically manage compute and storage services for your application, scaling up and down depending on user growth.
For example, AWS offers Elastic BeanStalk, which provides automatic service management for an EC2, S3, ELB, etc. Orchestration services can remove significant overhead and boilerplate work for an engineering team.
What are CDNs?
Content Delivery Network (CDN)
CDNs are a network of servers that provide faster access to internet content; CDNs are geographically distributed.
For example, rather than load images and other files from a server in Seattle, it makes more sense for a user in India to load those files from a CDN that’s closest to them, such as Indonesia .
Advantages of a CDN
Advantages of a CDN
Decrease application server load
Deliver content more quickly
Personalize content based on the user’s location
Disadvantages of a CDN
Disadvantages of a CDN
Increase infrastructure cost
Adds deployment complexity
Misconfigured or misplaced CDNs can lead to lower RPS