2. Lack of etiquette and manners is a huge turn off.
KnolX Etiquettes
Punctuality
Respect Knolx session timings,
you are requested not to join
sessions after a 5 minutes
threshold post the session start
time.
Feedback
Make sure to submit a
constructive feedback for all
sessions as it is very helpful for
the presenter.
Silent Mode
Please keep your screen on
mute, until it's necessary
Avoid Distraction
Be along with the presenter
during the session and enjoy.
4. A number of Spring projects provide cloud-vendor agnostic
abstractions to developers, so that with a simple configuration
switch, we are able to move our local application to run in an
on-prem data center, or in the cloud with managed services.
Google and Pivotal partnered to develop Spring Cloud adapters for
Google Cloud Platform. With Spring Cloud GCP, you can quickly
develop cloud native applications & harness the power of Google
infrastructure, including easy connection to GCP's managed
databases like Cloud SQL and Spanner.
Introduction
5. The aim of developing Spring cloud GCP is to provide tools for
developers to quickly build and deploy cloud native apps using
common patterns in distributed systems.
“The Spring Cloud GCP project makes the Spring Framework a
first-class citizen of Google Cloud Platform (GCP)”
Here, term 'First-class Citizen' can be understood through below
capabilities of deployable entity (item),
1. All items can be actual parameters of functions.
2. All items can be returned as results of functions.
3. All items can be the subject of the assignment statements.
4. All items can be tested for equality.
Mission
6. Features
Spring Cloud GCP offers a wide collection of libraries that make it easier to use
Google Cloud Platform from Spring Framework applications.
Project features include:
● Spring Cloud GCP Pub/Sub Support
It has several modules for sending messages to Pub/Sub topics and receiving messages from
Pub/Sub subscriptions using the Spring Framework. You can use these modules independently
or combine them for different use cases:
Spring Cloud GCP Pub/Sub Starter, lets you send and receive messages using helper classes.
Spring Integration Channel Adapters for Pub/Sub, let you connect Spring Integration Message
Channels.
Spring Cloud Stream Binder for Pub/Sub, lets you use Pub/Sub as messaging middleware in
Spring Cloud Stream applications.
7. ● Spring Data Cloud Spanner
It provides a Spring-based programming model that retains the consistency guarantees and
scalability of Cloud Spanner. Its features are similar to Spring Data JPA and Hibernate ORM,
with annotations designed for Cloud Spanner.
● Spring Data Cloud Datastore
It’s an abstraction for storing and retrieving POJOs in numerous storage technologies. Spring
Cloud GCP adds Spring Data support for Google Cloud Firestore in Datastore mode.
● Spring Data Reactive Repositories for Cloud Firestore
Spring Cloud GCP adds Spring Data Reactive Repositories support for Google Cloud Firestore
in native mode, providing reactive template and repositories support.
Project features
8. ● Spring Data Cloud SQL
It adds integrations with Spring JDBC so you can run your MySQL or PostgreSQL databases in
Google Cloud SQL using Spring JDBC, or other libraries that depend on it like Spring Data JPA.
● Google Cloud Logging, Tracing and Monitoring (formerly Stackdriver)
This module provides support for associating a web request trace ID with the corresponding log
entries.By default, it takes help of Spring Cloud Sleuth to set trace ID.
● Google Cloud Storage (Spring Resource and Spring Integration)
Allows storing any types of files in single or multiple regions. A Spring Boot starter is provided to
auto-configure the various Storage components.
● Google Cloud Vision API Template
Provides integrations with Google Cloud Vision. Cloud Vision allows developers to easily
integrate vision detection features within applications, including image labeling, face and
landmark detection, optical character recognition (OCR), and tagging of explicit content.
Project features
9. ● Spring Security identity extraction from Google Cloud IAP or Firebase
headers
Extracts IAP identity information from applications deployed to Google Cloud. Here,
Identity-Aware Proxy (IAP) is a Google Cloud Platform service that intercepts web requests
sent to your application, authenticates the user making the request using the Google Identity
Service, and only lets the requests through if they come from a user you authorize.
● Google Cloud BigQuery with Spring Integration
It is a convenience starter which provides autoconfiguration for the BigQuery client objects
with credentials needed to interface with BigQuery. Also provides, a Spring Integration
message handler for loading data into BigQuery tables in your Spring integration pipelines.
Project features
10. ● Secret Manager property source and API Template
Google Cloud Secret Manager is a secure and convenient method for storing API keys,
passwords, certificates, and other sensitive data.
Cloud GCP provides, a property source which allows you to specify and load the secrets
of your GCP project into your application context as a ‘Bootstrap Property Source’. And,
‘SecretManagerTemplate’ which allows you to read, write, and update secrets in Secret
Manager.
● KMS key encryption/decryption API Template
Google KMS allows you to create, import, and manage cryptographic keys and perform
cryptographic operations in a single centralized cloud service.
While Spring Cloud GCP offers a utility template class KmsTemplate which allows you to
conveniently encrypt and decrypt binary or text data.
Project features
11. Get started with Spring Cloud GCP
There are multiple ways to get started with the GCP
implementation
● Build and deploy the Spring boot Java application from
Cloud shell without ever leaving the browser
● Deploy Spring boot App to App Engine
● Deploy Spring boot app to Google Kubernetes Engine (GKE)
13. Starter dependencies
Below mentioned starter contains all the dependencies and transitive dependencies needed
to begin using their corresponding Spring Cloud GCP module