0% found this document useful (0 votes)
41 views17 pages

10 Unnamed 09 10 2023

Google AppEngine is a PaaS that provides scalable web application development and hosting on Google's distributed infrastructure. It logically divides into 4 components: infrastructure, runtime environment, storage, and scalable services. The runtime environment uses sandboxing to isolate applications and supports Java, Python and Go. Storage includes in-memory cache, semi-structured data storage, and static files. Developers can also use services like task queues, mail/messaging, and account management. The platform handles application lifecycles including testing, deployment, and monitoring. Pricing uses a free tier and billable quotas.

Uploaded by

184609
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views17 pages

10 Unnamed 09 10 2023

Google AppEngine is a PaaS that provides scalable web application development and hosting on Google's distributed infrastructure. It logically divides into 4 components: infrastructure, runtime environment, storage, and scalable services. The runtime environment uses sandboxing to isolate applications and supports Java, Python and Go. Storage includes in-memory cache, semi-structured data storage, and static files. Developers can also use services like task queues, mail/messaging, and account management. The platform handles application lifecycles including testing, deployment, and monitoring. Pricing uses a free tier and billable quotas.

Uploaded by

184609
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Google AppEngine

Google AppEngine

Google AppEngine is a PaaS implementation that provides services for developing and
hosting scalable Web applications.

It is a distributed and scalable runtime environment that leverages Google’s distributed


infrastructure to scale out applications facing a large number of requests by allocating more
computing resources to them and balancing the load among them.

The platform is logically divided into four major components:


1. infrastructure,
2. the run- timeenvironment,
3. the underlying storage,and
4. the set of scalable services that can be used to develop applications.
Architecture and coreconcepts
Infrastructure

Figure: Google AppEngine platform architecture


Architecture and coreconcepts
Runtime environment
Sandboxing

To provide the application environment with an isolated and protected context in which
it can execute without causing a threat to the server and without being influenced by
other applications.

Sandboxing is achieved by means of modified runtimes for applications that disable


some of the common features normally available with their default implementations.

If an application tries to perform any operation that is considered potentially harmful,
an exception is thrown and the execution is interrupted.
Architecture and coreconcepts
Runtime environment

Supported runtimes
• AppEngine applications are developed using three different languages and related
technologies: Java, Python, Go etc.

• Supports JSP, Java Servlet

• Support for Python is provided by an optimized Python 2.5.2 interpreter.

• Go runtime environment allows applications developed with the Go programming


language to be hosted and executed inAppEngine
Architecture and coreconcepts

Storage

AppEngine provides various types of storage, which operate differently depending on


the volatility of thedata.
Web applications are composed of dynamic and static data
Static Web servers are optimized for serving static content, and users can specify how
dynamic content should be served when uploading their applications toAppEngine.

There are three different levels of storage:


• in memory-cache,
• storage for semi-structured data, and
• long-term storage for static data
Architecture and coreconcepts

Storage

AppEngine provides various types of storage, which operate differently depending on the
volatility of thedata.

There are three different levels of storage:


• in memory-cache, ( Shared and Dedicated memcache)
• storage for semi-structured data, and
• long-term storage for static data
Architecture and coreconcepts

Storage Services

i. Static fileservers
Web applications are composed of dynamic and static data
Static Web servers are optimized for serving static content, and users can specify how
dynamic content should be served when uploading their applications toAppEngine.

ii. DataStore
DataStore is a service that allows developers to store semi-structured data.
DataStore can be considered as a large object database in which to store objects that can
be retrieved by a specified key
Architecture and coreconcepts

Application Services

i. UrlFetch
ii. Mail and instant messaging
iii. Account management
iv. Image manipulation
Architecture and coreconcepts

Compute Services

i. Task queues
i. Task Queues allow applications to submit a task for a later execution
ii. useful for long computations that cannot be completed within the maximum
response time
iii. Users to have up to 10 queues that can execute tasks

ii. Cron jobs


it is possible to schedule the required operation at the desired time by using the CronJobs
service
Application Lifecycle

AppEngine provides support for almost all the phases characterizing the life cycle of an
application:

• testing and development,


• deployment, and
• Monitoring

Cost model

• AppEngine provides a free service with limited quotas that get reset every 24 hours.
• An application is measured against billable quotas, fixed quotas, and per-minute quotas
Service category Service type AWS offering Azure offering Google Cloud Product

Amazon Elastic Compute Cloud


Compute Core compute GPU Optimized VMs Cloud GPUs
(EC2) P3

Amazon Elastic Compute Cloud


Compute Core compute Azure Virtual Machines Compute Engine
(EC2)

Azure Autoscale, Azure Virtual


Compute Core compute AWS Autoscaling Compute Engine Autoscaler
Machine Scale Sets

Compute Core compute Amazon EC2 Instance Connect OS Login

Compute Core compute Amazon Elastic Block Store (EBS) Azure Managed Disks Persistent Disk

Compute Dedicated VMs Amazon EC2 Dedicated Host Azure Dedicated Host Sole-tenant nodes

Azure Functions Serverless


Compute FaaS AWS Lambda Cloud Functions
Compute

Compute PaaS AWS Elastic Beanstalk Azure App Service App Engine

Compute VMware connectivity VMware Cloud on AWS Azure VMware Solution VMware Engine
Service category Service type AWS offering Azure offering Google Cloud product
Storage Block storage Amazon EBS Azure Disk Storage Persistent Disk
Azure Disk Storage, Azure
Storage File storage Amazon EFS Filestore
Files
Infrequently accessed object
Storage Amazon S3 Glacier Azure Archive Storage Cloud Storage Archive
storage
Storage Object storage AWS S3 Azure Blob Storage Cloud Storage
Glacier and Glacier deep
Backup Services Archival Archival storage Nearline and Coldline
archive
Backup Services Recovery Recovery backups
Backup Services Site Recovery Site recovery
Amazon DocumentDB,
Database Document data storage AWS DynamoDB, AWS Azure Cosmos DB Firestore
AppSync
Database In-memory data store Amazon ElastiCache Azure Cache Memorystore
Database NoSQL: Indexed Amazon DynamoDB Azure Cosmos DB Datastore
Database NoSQL: Key-value Amazon DynamoDB Azure Cosmos DB Cloud Bigtable
Database RDBMS Amazon Aurora Azure SQL Database Cloud Spanner

Amazon Relational Database Azure Database for MySQL


Database RDBMS Service (RDS and Cloud SQL
Amazon Aurora Azure Database for PostgreSQL
K.S.SENDHIL KUMAR
Azure Oracle Database
Database Relational Amazon RDS for Oracle Bare Metal Solution
Enterprise Edition
Which Cloud Provider is Best for My Business?
The things that all three platforms have in common are on-demand pricing, a free tier, great
support, and an emphasis on security. All are brought to you by reputable companies that
exemplify tech innovation. However, there are some important distinctions.
AWS is a good fit if:
Looking for maximum global reach
If stable, reliable service from a cloud platform is business-critical for a company with a long track record.
Flexibility is key and requires a wider range of services.
Enterprise customer or starting from scratch.
:Azure is a good fit if:
Migrating to the cloud for the first time
Most of your business apps and platforms are Windows-based.
Looking for a hybrid solution
Ideal for startups and developers
Architecture has built-in business continuity with Availability zones and Azure region pairs.
Which Cloud Provider is Best for My Business?

Google Cloud is a good fit if:


Looking for a comprehensive container-based model
Well ahead in digital migration and wants to become leaner and more cost-efficient.
Website works within a hyperscale networking environment.
Develop and deploy cloud-based software and applications.
Looking for a green tech solution
Reference
Rajkumar Buyya, Christian Vecchiola, and S. Thamarai Selvi, “Mastering Cloud Computing”
MK Publications, 2013.

You might also like