Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Upcoming SlideShare
What to Upload to SlideShare
Next
Download to read offline and view in fullscreen.

Share

Simpler, faster, cheaper Enterprise Apps using only Spring Boot on GCP

Download to read offline

Enterprises traditionally think of App Platforms as PCF (Pivotal Cloud Foundry) or Red Hat OpenShift. In reality, public Clouds have evolved into Application Platforms - especially when using Managed Services & Serverless.

• If you are an IT Executive under increased pressure to cut costs, see how better Technology Stack choices – not layoffs or pay cuts, can reduce IT costs + increase business agility (while avoiding vendor lock-in):

• If you are a Developer lost in the sea of the Cloud Computing choices, watch Ray Tsang (Java Champion from GCP) live-code, and you will walk away Cloud-Native :)

See how to stop cannibalization of IT by deploying your good ol' Java Spring Boot Apps directly to Google Cloud Platform - no Servers/PCF/OpenShift/Kubernetes to manage, nor to limit your creativity: https://youtu.be/2B0wWagE0dc

P.S. For more forward-looking Software Developerment topics, join ServerlessToronto.org Meetups, and if you have any questions about the Architectural Patterns discussed, reach out to me to chat.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to like this

Simpler, faster, cheaper Enterprise Apps using only Spring Boot on GCP

  1. 1. 1 Spring Cloud GCP lecture by Ray Tsang
  2. 2. Welcome to ServerlessToronto.org 2 Introduce Yourself ☺ - Why are you here? Where from? - Looking for, or Offering work? Fill the survey to win prises! “Serverless Cloud Native Java with Spring Cloud GCP” with Ray Tsang of GCP will start at 6:15pm…
  3. 3. 2 Sponsors: Knowledge Sponsor 1. Go to www.manning.com 2. Select *any* e-Book, Video course, or liveProject you want! 3. Add it to your shopping cart (no more than 1 item in the cart) 4. Raffle winners will send me the emails (used in Manning portal), 5. So the publisher can move it to your Dashboard – as if purchased. GOOD LUCK! Fill the survey to win ☺
  4. 4. Google Cloud Customer Community: C2C Fill the survey, be the first to own C2C’s hoodie! Connections Customer-to-customer conversations, as well as events, forums, and other outlets to connect with peers and experts. Events and Education Customer stories, presentations, blogs, and points of view on hot topics, best practices, and the latest Google Cloud news. Exclusive Access Sessions and conversations with Google Cloud experts and executives to learn from the best and share your feedback to help shape what’s next.
  5. 5. Serverless is not just about the Tech: 5 Serverless is New Agile & Mindset #1 Serverless Dev (Back-end FaaS dev, but turned into gluing APIs and Managed Services) #2 We're obsessed by creating business value (meaningful MVPs, Products), to empower Business users #3 We build bridges between Serverless Community (“Dev leg”), and Front-end & Voice- First developers & User Experience designers (“UX leg”) #4 Achieve agility NOT by “sprinting” faster (like in Scrum), but working smarter (by using bigger building blocks and less Ops)
  6. 6. Upcoming ServerlessToronto.org Meetups 6 1) Community Lightning Talks & Updates for our 3rd Birthday 2) How to choose what Azure services to use and when? – Barry Luijbregts Azure MVP & Pluralsight Author 3) This is my Architecture to prevent $72K Cloud Bills / bankruptcies – Sudeep Chauhan, ToMilkieWay.com 4) ??? We need you ☺ Please rate us ☺
  7. 7. Why cloud-native Java topic & why now? 7 Java Developers: You’re more Cloud-native than you think ☺ Enterprises: Traditionally think of PCF (Pivotal Cloud Foundry) or OpenShift as Platforms, but in reality, the underlying Cloud became an App Platform – especially when using Managed Services & Serverless. Why care in COVID-times? • Everybody is under pressure to cut costs – more now than before COVID • Using “a platform on top of a platform” increases Project Complexity, Development/Support/Cloud costs, plus decreases Speed to Market and Innovation (as you’re limited to which Cloud Services are allowed to use), • making IT more expensive, leading to more job losses, rate cuts… more “bleeding”. Solution: Spring Boot App is the unit of portability, now when most Clouds can run fully-managed Java Apps: +
  8. 8. Serverless End-to-End with Spring Boot on GCP
  9. 9. 2@saturnism @gcpcloud Ray Tsang Developer Advocate Google Cloud Platform Java Champion Spring Cloud GCP cloud.spring.io/spring-cloud-gcp/ @saturnism saturnism.me
  10. 10. 3@saturnism @gcpcloud Order UI PostgreSQL Order Service CRUD
  11. 11. 4@saturnism @gcpcloud Order UI PostgreSQL Order Service CRUD Where do you run this?
  12. 12. 5@saturnism @gcpcloud Order UI PostgreSQL Order Service CRUD Zipkin RabbitMQ Trace Data Vault
  13. 13. 6@saturnism @gcpcloud Order UI PostgreSQL Order Service CRUD Zipkin RabbitMQ Publish Event Vault
  14. 14. 7@saturnism @gcpcloud Order UI PostgreSQL Order Service CRUD Zipkin RabbitMQ Secrets Vault
  15. 15. 8@saturnism @gcpcloud Order UI MySQLOrder Service CRUD Zipkin RabbitMQZipkinZipkin RabbitMQRabbitMQ Publish EventTrace Data PostgreSQL Vault Vault Vault Secrets
  16. 16. 9@saturnism @gcpcloud Order UI Cloud SQL Order Service CRUD Cloud Trace Pub/Sub Publish Event Trace Data Secret Manager Secrets
  17. 17. 10@saturnism @gcpcloud Serverless?
  18. 18. 11@saturnism @gcpcloud Service Monitoring Metrics SLO/SLA/QPS Alerting Tracing Logging Debugging Profiling Service / Library Source Repository Tests Build Serving Environment Ingress / HTTPs Custom Domain URL Mapping Traffic Splitting Internal / External Services Min / Max Instances Autoscaling Environment Serving Environments Databases / Resources Secret Store Artifact Repository Docker Images Maven Artifacts Vulnerability Scanning Binary Authorization … 1 1 1 * Database Secret Messaging Storage ... *1 Infrastructure Monitoring Availability Capacity
  19. 19. 12@saturnism @gcpcloud Service Monitoring Metrics SLO/SLA/QPS Alerting Tracing Logging Debugging Profiling Service / Library Source Repository Tests Build Serving Environment Ingress / HTTPs Custom Domain URL Mapping Traffic Splitting Internal / External Services Min / Max Instances Autoscaling Environment Serving Environments Databases / Resources Secret Store Artifact Repository Docker Images Maven Artifacts Vulnerability Scanning Binary Authorization … 1 1 1 * Database Secret Messaging Storage ... *1 Infrastructure Monitoring Availability Capacity CI CD
  20. 20. 13@saturnism @gcpcloud Service Monitoring Cloud Ops Metrics SLO/SLA/QPS Alerting Tracing Logging Debugging Profiling Service / Library GitHub Source Repository Tests Build Serving Environment Cloud Run / App Engine Ingress / HTTPs Custom Domain URL Mapping Traffic Splitting Internal / External Services Min / Max Instances Autoscaling Environment Google Cloud Project Serving Environments Databases / Resources Secret Store Artifact Repository Artifact Registry Docker Images Maven Artifacts Vulnerability Scanning Binary Authorization … 1 1 1 * Database Secret Messaging Storage ... *1 Infrastructure Monitoring Cloud Ops Availability Capacity CI Cloud Build CD Cloud Build
  21. 21. 14@saturnism @gcpcloud Serverless End-to-End ● Source Repository ● CI/CD ● Runtime ● Databases, Secret Management, Messaging, ... ● Monitoring / Operations ● ... Focus on delivering value!
  22. 22. 15@saturnism @gcpcloud Just search for "Spring Boot GCP" https://github.com/spring-cloud/spring-cloud-gcp https://spring.io/projects/spring-cloud-gcp Collaboration between GCP and Spring engineers Idiomatic integrations with Spring Boot for 10+ GCP services +
  23. 23. 16@saturnism @gcpcloud Feature GCP Service Spring Framework Configuration Cloud Secret Manager Spring Cloud Config Messaging Cloud Pub/Sub Spring Integration Spring Cloud Stream Spring Dataflow Database Cloud SQL Cloud Spanner Cloud Firestore Cloud Datastore Spring Data JPA Spring Data Spanner, r2dbc driver, Hibernate Spring Data Reactive Firestore Spring Data Datastore Data Warehouse Cloud BigQuery Spring Integration Storage Cloud Storage Spring Resource Logging Stackdriver Logging Logback Trace Stackdriver Trace Spring Cloud Sleuth Metrics Stackdriver Monitoring Use Micrometer Security Cloud Identity-Aware Proxy Spring Security Vision Vision API Vision Starter
  24. 24. 17@saturnism @gcpcloud @SpringBootApplication class ExampleApplication { @Bean fun restTemplate() = RestTemplate() } fun main(args: Array<String>) { runApplication<DemoGcpApplication>(*args) } @RepositoryRestResource interface PersonRepositiory : PagingAndSortingRepository<Person, String> @Table data class Person( @PrimaryKey var id: String? = null, var name: String? = null )
  25. 25. 18@saturnism @gcpcloud 18 Databases
  26. 26. 19@saturnism @gcpcloud Bring your own Fully Managed Serverless What? Install your own MySQL Anything you want Cloud SQL (MySQL, PostgreSQL) Cloud spanner Firestore (NoSQL) Datastore (NoSQL) Where? Compute Engine VM Kubernetes Container We host it for you We host it for you Billing? Compute resource Compute resource Usage (Reads/Writes/Storage)
  27. 27. 20@saturnism @gcpcloud Cloud SQL MySQL, PostgreSQL, MS SQL Multi-zone replication Automatic Failover Vertical Scaling Up to 416 GB of RAM and 30 TB
  28. 28. 21@saturnism @gcpcloud SELECT * FROM Order WHERE done = FALSE AND priority >= 4 ORDER BY priority DESC Each field is individually indexed Manual composite index =, >, >=, <, <= No "Like" queries
  29. 29. 22@saturnism @gcpcloud Datastore Spring Data Integration POJO + Annotation Spring Data Repository Declarative Transaction
  30. 30. 23@saturnism @gcpcloud Spring Data ORM Mapping for Spanner, Datastore, Firestore No boilerplate code
  31. 31. 24@saturnism @gcpcloud Spring Data CRUD operations, Pagination, Sorting out of the box Automatic Query generation, and custom queries No boilerplate code
  32. 32. 25@saturnism @gcpcloud 25 Secret Manager
  33. 33. 26@saturnism @gcpcloud Secret Manager Secret Store Multi-version Fine-grained IAM Audit Logging
  34. 34. 27@saturnism @gcpcloud Spring Cloud Config with Secret Manager Store credentials, configurations in Cloud Secret Manager Reference values in properties or SpEL No code
  35. 35. 28@saturnism @gcpcloud
  36. 36. 29@saturnism @gcpcloud 29 Messaging
  37. 37. 30@saturnism @gcpcloud Publish/Subscribe One-to-Many Globally distributed Push & Pull At-least once delivery Ordering, Filtering (Beta) Pub/Sub
  38. 38. 31@saturnism @gcpcloud Producer Orders Topic Fulfillment Subscription Inventory Subscription ... Subscription Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer msg
  39. 39. 32@saturnism @gcpcloud Producer Orders Topic Fulfillment Subscription Inventory Subscription ... Subscription Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer msg msg msg
  40. 40. 33@saturnism @gcpcloud Producer Orders Topic Fulfillment Subscription Inventory Subscription ... Subscription Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer msg msg msg
  41. 41. 34@saturnism @gcpcloud Spring Integration With Pub/Sub, BigQuery, Cloud Storage and more
  42. 42. 35@saturnism @gcpcloud 35 Storage
  43. 43. 36@saturnism @gcpcloud Object store No more "disk out of space" Multi-regional, global availability Tiered storage options Encryption at rest Cloud Storage
  44. 44. 37@saturnism @gcpcloud 37 Serverless Runtimes
  45. 45. 38@saturnism @gcpcloud App Engine Cloud Run Deploys Your application A JAR! Your application A Container Image Billing Instance Hours Billable time Scaling 0 to N 0 to N CPU Available when instance is up Available when request is being processed
  46. 46. 39@saturnism @gcpcloud 39 Thanks! cloud.google.com/java spring.io/projects/spring-cloud-gcp saturnism.me/spring
  47. 47. Join www.ServerlessToronto.org Home of “Less IT Mess”

Enterprises traditionally think of App Platforms as PCF (Pivotal Cloud Foundry) or Red Hat OpenShift. In reality, public Clouds have evolved into Application Platforms - especially when using Managed Services & Serverless. • If you are an IT Executive under increased pressure to cut costs, see how better Technology Stack choices – not layoffs or pay cuts, can reduce IT costs + increase business agility (while avoiding vendor lock-in): • If you are a Developer lost in the sea of the Cloud Computing choices, watch Ray Tsang (Java Champion from GCP) live-code, and you will walk away Cloud-Native :) See how to stop cannibalization of IT by deploying your good ol' Java Spring Boot Apps directly to Google Cloud Platform - no Servers/PCF/OpenShift/Kubernetes to manage, nor to limit your creativity: https://youtu.be/2B0wWagE0dc P.S. For more forward-looking Software Developerment topics, join ServerlessToronto.org Meetups, and if you have any questions about the Architectural Patterns discussed, reach out to me to chat.

Views

Total views

121

On Slideshare

0

From embeds

0

Number of embeds

1

Actions

Downloads

5

Shares

0

Comments

0

Likes

0

×