Best Practices for Application Development
- Code and environment management
- Design and development of secure, scalable, reliable, loosely coupled application components and microservices
- Continuous integration and delivery
- Re-architecting applications for the cloud
Getting Started with Google Cloud Development
- Overview of Google Cloud services for apps and scripts:
– Google Cloud APIs
– Cloud SDK
– Cloud Client Libraries
– Cloud Shell
– Cloud Code
- Demo: Google APIs Explorer
- Lab: Setting up a Development Environment
Overview of Data Storage Options
- Overview of options to store application data
- Use cases for Cloud Storage, Firestore, Cloud Bigtable, Cloud SQL and Cloud Spanner
- Demo: Connecting Securely to a Cloud SQL Database
Best Practices for Using Datastore
- Best practices related to using Firestore in Datastore mode for:
– Queries
– Built-in and composite indexes
– Inserting and deleting data (batch operations)
– Transactions
– Error handling
- Demo: Explore Datastore
- Demo: Use Dataflow to Bulk-load Data into Datastore
- Lab: Storing Application Data in Datastore
Performing Operations on Buckets and Objects
- Cloud Storage concepts
- Consistency model
- Demo: Explore Cloud Storage
- Request endpoints
- Composite objects and parallel uploads
- Truncated exponential backoff
- Demo: Enable CORS Configuration in Cloud Storage
Best Practices for Using Cloud Storage
- Naming buckets for static websites and other uses
- Naming objects (from an access distribution perspective)
- Performance considerations
- Lab: Storing Image and Video Files in Cloud Storage
Handling Authentication and Authorization
- Identity and Access Management (IAM) roles and service accounts
- User authentication by using Firebase Authentication
- User authentication and authorization by using Identity-Aware Proxy
- Lab: Adding User Authentication to your Application
Using Pub/Sub to Integrate Components of Your Application
- Topics, publishers, and subscribers
- Pull and push subscriptions
- Use cases for Pub/Sub
- Lab: Developing a Backend Service
Adding Intelligence to Your Application
- Overview of pre-trained machine learning APIs such as the Vision API and the Cloud Natural Language Processing API.
Using Cloud Functions for Event-Driven Processing
- Key concepts such as triggers, background functions, HTTP functions
- Use cases
- Developing and deploying functions
- Logging, error reporting, and monitoring
- Demo: Invoke Cloud Functions Through Direct Request-response
- Lab: Processing Pub/Sub Data using Cloud Functions
Managing APIs with Cloud Endpoints
- Open API deployment configuration
- Lab: Deploying an API for the Quiz Application
Deploying Applications
- Creating and storing container images
- Repeatable deployments with deployment configuration and templates
- Demo: Exploring Cloud Build and Cloud Container Registry
- Lab: Deploying the Application into Kubernetes Engine
Compute Options for Your Application
- Considerations for choosing a compute option for your application or service:
– Compute Engine
– Google Kubernetes Engine (GKE)
– Cloud Run
– Cloud Functions
- Platform comparisons.
– Comparing App Engine and Cloud Run
Debugging, Monitoring, and Tuning Performance
- Google Cloud’s operations suite
- Managing performance
- Lab: Debugging Application Errors
- Logging
- Monitoring and tuning performance
- Identifying and troubleshooting performance issues
- Lab: Harnessing Cloud Trace and Cloud Monitoring