What's New in Spring for Apache Kafka 2.0VMware Tanzu
SpringOne Platform 2017
Gary Russell, Pivotal
Discussion of important new features in this Spring abstraction over the Apache Kafka Java client. The project is gaining popularity in the Spring community and provides a fast on-ramp to using Apache Kafka in a Spring application. This update has improved threading and a new Consumer-aware listener.
A Taxonomy of Clustering, or, No Container is an IslandTed M. Young
Covers the evolution from static deployments using individual Docker containers, to dynamic deployments in Kubernetes and Mesos, with a taxonomy of clustering, i.e., what's important about cluster managers.
Talk given at the Software Development & Evolution Conference in Winnipeg, Manitoba, Canada on November 2nd, 2015.
Choose Your Own Adventure with JHipster & Kubernetes - Utah JUG 2020Matt Raible
Remember the choose your own adventure books that you used to read as a kid? This session is a reincarnation of a choose your own adventure book as a conference talk!
You'll learn about Spring Boot, Docker, and Kubernetes in this talk, along with the choices you make in the following areas:
* What kind of application architecture to build? Monolith or microservices?
* Would you like to use Java or Kotlin?
* MySQL, PostgreSQL, or MongoDB?
* Spring MVC or Spring WebFlux?
* Angular, React, or Vue.js?
* PWA or mobile app?
* Istio with Kubernetes or Kubernetes without Istio?
GitHub repos of demos:
* Monolith: https://github.com/mraible/healthy-hipster
* Microservices: https://github.com/mraible/ujug-microservices
Clement Ho discusses GitLab's use of Vue for its frontend components. While many assume GitLab uses a single-page Vue application, its frontend is actually made up of multiple Vue applications. This structure was adopted to allow for iterative development as individual features are added as Vue apps. Over time, more components were rewritten in Vue due to its advantages around performance, maintainability and reuse. GitLab then created its own component library called gitlab-ui to further improve development velocity and organize reusable components. The challenges now include managing updates across GitLab products and decoupling the components from GitLab's CSS.
This document discusses using Micrometer to monitor applications. It begins with an introduction to Micrometer and examples of using it with Spring Boot to define metrics like timers, histograms and counters. It then covers integrating Micrometer with Prometheus to store metrics and Grafana for visualization. The document provides examples of visualizing different metric types in Grafana and recommends securing exposed metrics endpoints. It suggests Prometheus, Graphite or other databases to store metrics and discusses best practices like disabling unneeded endpoints and implementing security.
>>> View this presentation online at http://github-service-universe.kimminich.de/ <<<
PDF version of the slide deck for my JavaLand 2015 talk "All-round careful Software Development with GitHub Services"
Tools for unit testing, building applications, analyzing software quality and planning release scopes are an essential aspect of modern software development. With GitHub and "pluggable" external services there are lots of options to move these aspects into "the Cloud". For open source projects this is a viable alternative to on-premise solutions. In this talk I will present and demonstrate the CI lifecycle of some of my recent projects hosted on GitHub where I tried to integrate modern tools (e.g. Gradle, npm, bower) and external services (e.g. Travis-CI, Code Climate, Coveralls, HuBoard, AmazonSNS, NMA). The benefits and limitations of those services will be honestly illuminated. I am not affiliated with any of the providers mentioned, so this talk will not end up as a marketing show! Instead, the audience is supposed go out of this talk with some new things to try out with their own GitHub projects while hopefully being able to avoid some of the ramp-up difficulties.
Reactive frontends with RxJS and AngularVMware Tanzu
SpringOne Platform 2017
Sergi Almar, Independent
"Reactive programming has changed the way we develop modern applications. If you are a Java backend developer you might be already familiar with this paradigm and the new Spring 5 support. But what about the frontend? We want to build clean, testable, and scalable apps. The good news is that we can reuse the knowledge, the concepts are universal.
In this presentation we’ll introduce the fundamentals of RxJS and see how to manage data streams like UI events, async HTTP requests, WebSockets / SSE…in a uniform way. Let RxJS do the heavy lifting.
Angular embraces and makes heavy use of RxJS, we’ll see how to use them together with practical examples on common problems."
Kritis is an open-source solution for securing your software supply chain for Kubernetes applications. Kritis enforces deploy-time security policies that ensures only trusted container images are deployed on kubernetes to your cluster. With Kritis, you can require images to be signed by trusted authorities during the development process and then enforce signature validation when deploying. Kritis enables tighter control over your container environment by ensuring only verified images are integrated into production.
Talk outline:
- Introduction to the concept of binary authorization
- Live demo of using Kritis and Grafeas for deploying images with confidence in Kubernetes
- Grafeas and Kritis roadmap
At the end, attendees will gain solid understanding on the process of binary authorization and how to incorporate it in their build and deployment pipelines
What's New in Spring for Apache Kafka 2.0VMware Tanzu
SpringOne Platform 2017
Gary Russell, Pivotal
Discussion of important new features in this Spring abstraction over the Apache Kafka Java client. The project is gaining popularity in the Spring community and provides a fast on-ramp to using Apache Kafka in a Spring application. This update has improved threading and a new Consumer-aware listener.
A Taxonomy of Clustering, or, No Container is an IslandTed M. Young
Covers the evolution from static deployments using individual Docker containers, to dynamic deployments in Kubernetes and Mesos, with a taxonomy of clustering, i.e., what's important about cluster managers.
Talk given at the Software Development & Evolution Conference in Winnipeg, Manitoba, Canada on November 2nd, 2015.
Choose Your Own Adventure with JHipster & Kubernetes - Utah JUG 2020Matt Raible
Remember the choose your own adventure books that you used to read as a kid? This session is a reincarnation of a choose your own adventure book as a conference talk!
You'll learn about Spring Boot, Docker, and Kubernetes in this talk, along with the choices you make in the following areas:
* What kind of application architecture to build? Monolith or microservices?
* Would you like to use Java or Kotlin?
* MySQL, PostgreSQL, or MongoDB?
* Spring MVC or Spring WebFlux?
* Angular, React, or Vue.js?
* PWA or mobile app?
* Istio with Kubernetes or Kubernetes without Istio?
GitHub repos of demos:
* Monolith: https://github.com/mraible/healthy-hipster
* Microservices: https://github.com/mraible/ujug-microservices
Clement Ho discusses GitLab's use of Vue for its frontend components. While many assume GitLab uses a single-page Vue application, its frontend is actually made up of multiple Vue applications. This structure was adopted to allow for iterative development as individual features are added as Vue apps. Over time, more components were rewritten in Vue due to its advantages around performance, maintainability and reuse. GitLab then created its own component library called gitlab-ui to further improve development velocity and organize reusable components. The challenges now include managing updates across GitLab products and decoupling the components from GitLab's CSS.
This document discusses using Micrometer to monitor applications. It begins with an introduction to Micrometer and examples of using it with Spring Boot to define metrics like timers, histograms and counters. It then covers integrating Micrometer with Prometheus to store metrics and Grafana for visualization. The document provides examples of visualizing different metric types in Grafana and recommends securing exposed metrics endpoints. It suggests Prometheus, Graphite or other databases to store metrics and discusses best practices like disabling unneeded endpoints and implementing security.
>>> View this presentation online at http://github-service-universe.kimminich.de/ <<<
PDF version of the slide deck for my JavaLand 2015 talk "All-round careful Software Development with GitHub Services"
Tools for unit testing, building applications, analyzing software quality and planning release scopes are an essential aspect of modern software development. With GitHub and "pluggable" external services there are lots of options to move these aspects into "the Cloud". For open source projects this is a viable alternative to on-premise solutions. In this talk I will present and demonstrate the CI lifecycle of some of my recent projects hosted on GitHub where I tried to integrate modern tools (e.g. Gradle, npm, bower) and external services (e.g. Travis-CI, Code Climate, Coveralls, HuBoard, AmazonSNS, NMA). The benefits and limitations of those services will be honestly illuminated. I am not affiliated with any of the providers mentioned, so this talk will not end up as a marketing show! Instead, the audience is supposed go out of this talk with some new things to try out with their own GitHub projects while hopefully being able to avoid some of the ramp-up difficulties.
Reactive frontends with RxJS and AngularVMware Tanzu
SpringOne Platform 2017
Sergi Almar, Independent
"Reactive programming has changed the way we develop modern applications. If you are a Java backend developer you might be already familiar with this paradigm and the new Spring 5 support. But what about the frontend? We want to build clean, testable, and scalable apps. The good news is that we can reuse the knowledge, the concepts are universal.
In this presentation we’ll introduce the fundamentals of RxJS and see how to manage data streams like UI events, async HTTP requests, WebSockets / SSE…in a uniform way. Let RxJS do the heavy lifting.
Angular embraces and makes heavy use of RxJS, we’ll see how to use them together with practical examples on common problems."
Kritis is an open-source solution for securing your software supply chain for Kubernetes applications. Kritis enforces deploy-time security policies that ensures only trusted container images are deployed on kubernetes to your cluster. With Kritis, you can require images to be signed by trusted authorities during the development process and then enforce signature validation when deploying. Kritis enables tighter control over your container environment by ensuring only verified images are integrated into production.
Talk outline:
- Introduction to the concept of binary authorization
- Live demo of using Kritis and Grafeas for deploying images with confidence in Kubernetes
- Grafeas and Kritis roadmap
At the end, attendees will gain solid understanding on the process of binary authorization and how to incorporate it in their build and deployment pipelines
Adding Security to your SLO-based Release Validation with KeptnAndreas Grabner
This talk was given at DevSecOps Days Boston and DevOps & Security Meetup Vienna in 2021
Automatic Release Validation, aka Quality Gates, is not a new concept but often only covers functional or performance metrics. Keptn’s open SLO-based evaluation allows DevSecOps to have their favorite security tool report SLOs such as number of detected vulnerabilities as part of delivery automation
Software Supply Chain Management with Grafeas and KritisAysylu Greenberg
Software Supply Chain is a collective term used to describe the continuous integration and delivery pipelines. In addition, it refers to the observability tools that track what happens to a piece of code from the moment it’s in the source code to when it gets deployed, and everywhere in between. Grafeas is an open-source artifact metadata API to audit and govern your software supply chain. It's built as an industry standard for storing and retrieving metadata about software resources. Kritis is an open-source solution for securing your software supply chain for Kubernetes applications. It enforces deploy-time security policies using Grafeas.
This talk will discuss the goals for each of the two open source projects, dive into the examples of how they can be used to secure your company's software supply chain, and conclude with the details of current and future development.
Software Supply Chain Observability with Grafeas and KritisAysylu Greenberg
Software Supply Chain is a collective term used to describe the continuous integration and delivery pipelines. In addition, it refers to the observability tools that track what happens to a piece of code from the moment it’s in the source code to when it gets deployed, and everywhere in between. Grafeas (https://grafeas.io/) is an open-source artifact metadata API to audit and govern your software supply chain. It's built as an industry standard for storing and retrieving metadata about software resources. Kritis (https://github.com/grafeas/kritis) is an open-source solution for securing your software supply chain for Kubernetes applications. It enforces deploy-time security policies using Grafeas.
This talk will discuss the goals for each of the two open source projects, dive into the examples of how they can be used to secure your company's software supply chain, and conclude with the details of current and future development.
Running Java Applications on Cloud FoundryVMware Tanzu
SpringOne Platform 2017
Ben Hale, Pivotal
From a developer's perspective, running a Java application on Cloud Foundry appears to consist of pushing a compiled artifact and getting a running process. From the platform's perspective though, there's a whole lot more going on. In this talk, the lead developer of the Java Buildpack will walk you through what goes on during application staging and what the buildpack can do for you. It will cover everything from dependency resolution to memory calculation and will even discuss how to integrate with marketplace services with no application configuration.
Software Supply Chain Management with Grafeas and KritisAysylu Greenberg
Software Supply Chain is a collective term used to describe the continuous integration and delivery pipelines. In addition, it refers to the observability tools that track what happens to a piece of code from the moment it’s in the source code to when it gets deployed, and everywhere in between. Grafeas is an open-source artifact metadata API to audit and govern your software supply chain. It's built as an industry standard for storing and retrieving metadata about software resources. Kritis is an open-source solution for securing your software supply chain for Kubernetes applications. It enforces deploy-time security policies using Grafeas.
This talk will discuss the goals for each of the two open source projects, dive into the examples of how they can be used to secure your company's software supply chain, and conclude with the details of current and future development.
Crossing the Streams! Rollout Strategies to Keep Your Users Happy!VMware Tanzu
This document discusses strategies for rolling out application updates on Kubernetes in a way that keeps users happy. It describes how typical deployments and rollouts work, ways they can go wrong by dropping requests, and strategies to handle rollouts gracefully like using a sidecar container and preStop termination hooks. The strategies aim to allow applications to shutdown gracefully and drain connections during pod deletion to avoid dropped requests and improve the user experience during updates.
This document discusses using Spring Cloud Netflix to connect microservices. It covers:
- An overview of Netflix and Spring Cloud
- How to use Spring Cloud Netflix libraries like Eureka, Ribbon and Hystrix to implement service discovery, load balancing and fault tolerance between microservices
- Demos of creating Eureka service registry and registering producer/consumer services
Defining & Enforcing Policies the GitOps WayWeaveworks
GitOps is a great way to reliably and securely deploy both the infrastructure and applications in the context of Kubernetes. In this talk we will have a look at how we can use CNCF Open Policy Agent (OPA) to define and enforce policies along the entire supply chain. For example, an OPA Rego-based bot can review Git commits and automatically provide feedback, and in the runtime space the Gatekeeper project can be of great value.
Link to YouTube Video of this talk: https://youtu.be/Xe0PDeENMoE
Speaker: Michael Hausenblas, Developer Advocate, AWS
Bio: Michael is a Developer Advocate at AWS, part of the container service team, focusing on container security. Michael shares his experience around cloud native infrastructure and apps through demos, blog posts, books, and public speaking engagements as well as contributes to open source software. Before AWS, Michael worked at Red Hat, Mesosphere, MapR and in two research institutions in Ireland and Austria.
The document summarizes a workshop on Kubernetes hands-on labs conducted by William Yeh. It introduces containers, Kubernetes concepts and terminology. It then outlines 7 labs covering: 1) legacy deployment, 2) Docker, 3) frontend/backend separation, 4) local Kubernetes setup, 5) Kubernetes configuration, 6) deployment on Google Kubernetes Engine (GKE), and 7) canary release deployment. Each lab section summarizes the key tasks, differences from previous versions, and solicits any questions. The conclusion recaps containers and Kubernetes concepts covered.
1) Mercari has transitioned some services to microservices architecture running on Kubernetes in the US region to improve development velocity.
2) Key challenges in operating microservices include deployment automation using Spinnaker, and observability of distributed systems through request tracing, logging, and metrics.
3) The architecture is still evolving with discussions on service mesh and chaos engineering to improve reliability in the face of failures. Microservices adoption is just beginning in the JP region.
Front End Development for Back End Developers - vJUG24 2017Matt Raible
Are you a backend developer that’s being pushed into front-end development? Are you frustrated with all JavaScript frameworks and build tools you have to learn to be a good UI developer? If so, this session is for you! We’ll explore the tools for frontend development and frameworks too!
Streamed live at 8pm MST on Oct 25, 2017! https://virtualjug.com/vjug24/
Choose Your Own Adventure with JHipster & Kubernetes - Denver JUG 2020Matt Raible
Remember the choose your own adventure books that you used to read as a kid? This session is a reincarnation of a choose your own adventure book as a conference talk!
You'll learn about Spring Boot, Docker, and Kubernetes in this talk, along with the choices you make in the following areas:
* What kind of application architecture to build? Monolith or microservices?
* Would you like to use Java or Kotlin?
* MySQL, PostgreSQL, or MongoDB?
* Spring MVC or Spring WebFlux?
* Angular, React, or Vue.js?
* PWA or mobile app?
* Istio with Kubernetes or Kubernetes without Istio?
GitHub repos of demos:
* Monolith: https://github.com/mraible/healthy-hipster
* Microservices: https://github.com/mraible/djug-microservices
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache TomcatVMware Hyperic
Jennifer Hickey of SpringSource's Case Study of the results from Hyperic's recent migration from EJB to Spring. From the 2010 SpringOne 2GX conference.
Spring Data and In-Memory Data Management in ActionJohn Blum
This document provides an overview and agenda for a presentation on Spring Data and in-memory data management using Apache Geode. The presentation will cover Apache Geode functionality, integrating Geode with Spring frameworks, and examples of caching, events, data access and improvements in Geode and related projects. It lists caching, scalability, availability and other capabilities of Geode. The roadmap discusses upcoming versions of Spring Data GemFire and Geode as well as integration with Spring Boot, Session and other projects.
✭✭ NOTE: a revised version of this lab is available at https://www.slideshare.net/williamyeh/rd-kubernetes-gdg-cloud-kh-201908-version ✭✭
90-Minute Workshop held at Taiwan Cloud Edge Summit 2019 (台灣雲端大會).
* 課程簡介
Kubernetes 是目前雲端環境的顯學。可是,傳統的程式,並不是原封不動搬上去,就能夠自動享受 Kubernetes 所宣稱的種種好處。 新的環境,不僅需要新的 Ops 思維,也需要新的 Dev 思維。我們將以一個半小時的時間,從軟體研發者的角度,探討軟體的設計該做哪些最起碼的改變,從實作中體驗 Kubernetes 引進的新觀念及新效益。
* 課程目標
從實例中體驗,傳統 web 應用程式在搬上 Kubernetes 時,可能會經歷哪些架構面的調整,才能享受新架構的效益:
- 容器化
- 微服務
- 組態管理
- 多重環境管理:本機端與雲端(以 GKE 為例)
SpringOne Platform 2017
Meaghan Kjelland, Google
This talk is aimed at people who are curious about using Kubernetes and want an overview of how it works. Kubernetes is an open source container orchestration system, developed by Google. It deploys, scales and manages containerized applications. We’ll talk about the fundamental building blocks of a Kubernetes cluster, the architecture of the system, and the problems that it can solve. Then we’ll deploy and scale a Spring Boot application using Kubernetes.
Adding Security to your SLO-based Release Validation with KeptnAndreas Grabner
This talk was given at DevSecOps Days Boston and DevOps & Security Meetup Vienna in 2021
Automatic Release Validation, aka Quality Gates, is not a new concept but often only covers functional or performance metrics. Keptn’s open SLO-based evaluation allows DevSecOps to have their favorite security tool report SLOs such as number of detected vulnerabilities as part of delivery automation
Software Supply Chain Management with Grafeas and KritisAysylu Greenberg
Software Supply Chain is a collective term used to describe the continuous integration and delivery pipelines. In addition, it refers to the observability tools that track what happens to a piece of code from the moment it’s in the source code to when it gets deployed, and everywhere in between. Grafeas is an open-source artifact metadata API to audit and govern your software supply chain. It's built as an industry standard for storing and retrieving metadata about software resources. Kritis is an open-source solution for securing your software supply chain for Kubernetes applications. It enforces deploy-time security policies using Grafeas.
This talk will discuss the goals for each of the two open source projects, dive into the examples of how they can be used to secure your company's software supply chain, and conclude with the details of current and future development.
Software Supply Chain Observability with Grafeas and KritisAysylu Greenberg
Software Supply Chain is a collective term used to describe the continuous integration and delivery pipelines. In addition, it refers to the observability tools that track what happens to a piece of code from the moment it’s in the source code to when it gets deployed, and everywhere in between. Grafeas (https://grafeas.io/) is an open-source artifact metadata API to audit and govern your software supply chain. It's built as an industry standard for storing and retrieving metadata about software resources. Kritis (https://github.com/grafeas/kritis) is an open-source solution for securing your software supply chain for Kubernetes applications. It enforces deploy-time security policies using Grafeas.
This talk will discuss the goals for each of the two open source projects, dive into the examples of how they can be used to secure your company's software supply chain, and conclude with the details of current and future development.
Running Java Applications on Cloud FoundryVMware Tanzu
SpringOne Platform 2017
Ben Hale, Pivotal
From a developer's perspective, running a Java application on Cloud Foundry appears to consist of pushing a compiled artifact and getting a running process. From the platform's perspective though, there's a whole lot more going on. In this talk, the lead developer of the Java Buildpack will walk you through what goes on during application staging and what the buildpack can do for you. It will cover everything from dependency resolution to memory calculation and will even discuss how to integrate with marketplace services with no application configuration.
Software Supply Chain Management with Grafeas and KritisAysylu Greenberg
Software Supply Chain is a collective term used to describe the continuous integration and delivery pipelines. In addition, it refers to the observability tools that track what happens to a piece of code from the moment it’s in the source code to when it gets deployed, and everywhere in between. Grafeas is an open-source artifact metadata API to audit and govern your software supply chain. It's built as an industry standard for storing and retrieving metadata about software resources. Kritis is an open-source solution for securing your software supply chain for Kubernetes applications. It enforces deploy-time security policies using Grafeas.
This talk will discuss the goals for each of the two open source projects, dive into the examples of how they can be used to secure your company's software supply chain, and conclude with the details of current and future development.
Crossing the Streams! Rollout Strategies to Keep Your Users Happy!VMware Tanzu
This document discusses strategies for rolling out application updates on Kubernetes in a way that keeps users happy. It describes how typical deployments and rollouts work, ways they can go wrong by dropping requests, and strategies to handle rollouts gracefully like using a sidecar container and preStop termination hooks. The strategies aim to allow applications to shutdown gracefully and drain connections during pod deletion to avoid dropped requests and improve the user experience during updates.
This document discusses using Spring Cloud Netflix to connect microservices. It covers:
- An overview of Netflix and Spring Cloud
- How to use Spring Cloud Netflix libraries like Eureka, Ribbon and Hystrix to implement service discovery, load balancing and fault tolerance between microservices
- Demos of creating Eureka service registry and registering producer/consumer services
Defining & Enforcing Policies the GitOps WayWeaveworks
GitOps is a great way to reliably and securely deploy both the infrastructure and applications in the context of Kubernetes. In this talk we will have a look at how we can use CNCF Open Policy Agent (OPA) to define and enforce policies along the entire supply chain. For example, an OPA Rego-based bot can review Git commits and automatically provide feedback, and in the runtime space the Gatekeeper project can be of great value.
Link to YouTube Video of this talk: https://youtu.be/Xe0PDeENMoE
Speaker: Michael Hausenblas, Developer Advocate, AWS
Bio: Michael is a Developer Advocate at AWS, part of the container service team, focusing on container security. Michael shares his experience around cloud native infrastructure and apps through demos, blog posts, books, and public speaking engagements as well as contributes to open source software. Before AWS, Michael worked at Red Hat, Mesosphere, MapR and in two research institutions in Ireland and Austria.
The document summarizes a workshop on Kubernetes hands-on labs conducted by William Yeh. It introduces containers, Kubernetes concepts and terminology. It then outlines 7 labs covering: 1) legacy deployment, 2) Docker, 3) frontend/backend separation, 4) local Kubernetes setup, 5) Kubernetes configuration, 6) deployment on Google Kubernetes Engine (GKE), and 7) canary release deployment. Each lab section summarizes the key tasks, differences from previous versions, and solicits any questions. The conclusion recaps containers and Kubernetes concepts covered.
1) Mercari has transitioned some services to microservices architecture running on Kubernetes in the US region to improve development velocity.
2) Key challenges in operating microservices include deployment automation using Spinnaker, and observability of distributed systems through request tracing, logging, and metrics.
3) The architecture is still evolving with discussions on service mesh and chaos engineering to improve reliability in the face of failures. Microservices adoption is just beginning in the JP region.
Front End Development for Back End Developers - vJUG24 2017Matt Raible
Are you a backend developer that’s being pushed into front-end development? Are you frustrated with all JavaScript frameworks and build tools you have to learn to be a good UI developer? If so, this session is for you! We’ll explore the tools for frontend development and frameworks too!
Streamed live at 8pm MST on Oct 25, 2017! https://virtualjug.com/vjug24/
Choose Your Own Adventure with JHipster & Kubernetes - Denver JUG 2020Matt Raible
Remember the choose your own adventure books that you used to read as a kid? This session is a reincarnation of a choose your own adventure book as a conference talk!
You'll learn about Spring Boot, Docker, and Kubernetes in this talk, along with the choices you make in the following areas:
* What kind of application architecture to build? Monolith or microservices?
* Would you like to use Java or Kotlin?
* MySQL, PostgreSQL, or MongoDB?
* Spring MVC or Spring WebFlux?
* Angular, React, or Vue.js?
* PWA or mobile app?
* Istio with Kubernetes or Kubernetes without Istio?
GitHub repos of demos:
* Monolith: https://github.com/mraible/healthy-hipster
* Microservices: https://github.com/mraible/djug-microservices
Case Study: Migrating Hyperic from EJB to Spring from JBoss to Apache TomcatVMware Hyperic
Jennifer Hickey of SpringSource's Case Study of the results from Hyperic's recent migration from EJB to Spring. From the 2010 SpringOne 2GX conference.
Spring Data and In-Memory Data Management in ActionJohn Blum
This document provides an overview and agenda for a presentation on Spring Data and in-memory data management using Apache Geode. The presentation will cover Apache Geode functionality, integrating Geode with Spring frameworks, and examples of caching, events, data access and improvements in Geode and related projects. It lists caching, scalability, availability and other capabilities of Geode. The roadmap discusses upcoming versions of Spring Data GemFire and Geode as well as integration with Spring Boot, Session and other projects.
✭✭ NOTE: a revised version of this lab is available at https://www.slideshare.net/williamyeh/rd-kubernetes-gdg-cloud-kh-201908-version ✭✭
90-Minute Workshop held at Taiwan Cloud Edge Summit 2019 (台灣雲端大會).
* 課程簡介
Kubernetes 是目前雲端環境的顯學。可是,傳統的程式,並不是原封不動搬上去,就能夠自動享受 Kubernetes 所宣稱的種種好處。 新的環境,不僅需要新的 Ops 思維,也需要新的 Dev 思維。我們將以一個半小時的時間,從軟體研發者的角度,探討軟體的設計該做哪些最起碼的改變,從實作中體驗 Kubernetes 引進的新觀念及新效益。
* 課程目標
從實例中體驗,傳統 web 應用程式在搬上 Kubernetes 時,可能會經歷哪些架構面的調整,才能享受新架構的效益:
- 容器化
- 微服務
- 組態管理
- 多重環境管理:本機端與雲端(以 GKE 為例)
SpringOne Platform 2017
Meaghan Kjelland, Google
This talk is aimed at people who are curious about using Kubernetes and want an overview of how it works. Kubernetes is an open source container orchestration system, developed by Google. It deploys, scales and manages containerized applications. We’ll talk about the fundamental building blocks of a Kubernetes cluster, the architecture of the system, and the problems that it can solve. Then we’ll deploy and scale a Spring Boot application using Kubernetes.
This document provides an overview of a demo presentation on riffing on Knative. It introduces Knative and its components for building, deploying and managing serverless workloads. It demonstrates how riff builds on Knative to provide an opinionated experience for building functions using various programming languages and invoking them through command line or event driven methods. The document includes examples of deploying and chaining Java, JavaScript and command line functions on Knative and Kubernetes.
Containerizing a Data Warehouse for KubernetesVMware Tanzu
This document discusses containerizing a data warehouse using Kubernetes. It introduces Greenplum for Kubernetes, which allows deploying Greenplum databases on Kubernetes for flexible and portable analytics. Greenplum is deployed using a Greenplum operator that focuses on Greenplum's needs. Examples are provided of deploying a Greenplum instance on Kubernetes and using it for agile analytics by streaming data from applications to Kafka and analyzing the events with Jupyter notebooks.
This document provides an overview of Spring Cloud on Pivotal Container Service (PKS). It discusses the evolution from monolith applications to microservices using Spring Boot and Spring Cloud. It outlines key cloud native principles and the journey from Spring Boot to deploying microservices on Kubernetes via PKS. The presentation includes a demo of a sample application and roadmap for Spring Cloud Kubernetes integration.
Scalable Smart Caching for Spring DevelopersVMware Tanzu
The document discusses caching strategies at Netflix and Pivotal Cloud Cache (PCC). It notes that Netflix relies heavily on caches to provide a low latency data layer for its stateless services. PCC is Pivotal's distributed in-memory cache optimized for Pivotal Cloud Foundry apps that provides high availability, scalability, and fault tolerance. The document outlines PCC's topology and components, discusses caching design patterns like look-aside caching, and provides an example of live coding with PCC.
Pivotal Cloud Foundry 2.3 introduces several new features to improve speed, stability, scalability, security and cost savings for operators and developers. Key updates include service instance sharing between spaces, multi-buildpack support for .NET applications, an embedded operating system for tiles, enhanced health monitoring and alerting tools, and improved scalability for OpenStack deployments. The release also strengthens security with mutual TLS application verification and centralized credential management.
What We're Learning Adopting Spring Boot and PCF for Dell.com's eCommerceVMware Tanzu
The document discusses Dell's adoption of Spring Boot and Pivotal Cloud Foundry (PCF) for its e-commerce platform. It describes how Dell transformed its technology foundation to be cloud-native using microservices, Spring, and PCF. It also details Dell's evaluation of different technologies like Spring Cloud Dataflow and Apache Camel for integration and highlights tips for adopting Spring and leveraging PCF.
The document discusses containers and Kubernetes. It begins with an overview of containers and the container hype cycle, noting that containers are maturing from an initial hype phase. It then covers container principles like running as a non-privileged user, building container images using layers, tagging images, and deploying containerized applications on Kubernetes. The overall message is that containers are becoming a mainstream deployment approach but require systematic processes for operations and security.
Building Highly Scalable Spring Applications using In-Memory Data GridsJohn Blum
Slides for Luke Shannon and I's presentation at SpringOne2GX-2015 in Washingon D.C. on Tuesday, September 15th from 10:30 am to 12:00 PM EDT.
Session details @ https://2015.event.springone2gx.com/schedule/sessions/building_highly_scalable_spring_applications_with_in_memory_distributed_data_grids.html.
Connecting All Abstractions with IstioVMware Tanzu
SpringOne Platform 2017
Ramiro Salas, Pivotal
The concept of a service mesh represents a paradigm shift on application connectivity for distributed systems, with wide implications for analytics, policy and extensibility. In this talk, we will explain what a service mesh is, the power it brings to microservices, and its impact on Cloud Foundry and K8s, both separately and together. We will also discuss the implications for the traditional network infrastructure, and the shifting of responsibilities from L3/4 to L7, and our current thinking of using Istio to integrate all abstractions.
Machines Can Learn - a Practical Take on Machine Intelligence Using Spring Cl...Christian Tzolov
This document discusses using machine learning with Spring Cloud Data Flow and TensorFlow. It introduces machine learning concepts and how they differ from classical programming. It then describes using TensorFlow for deep learning inference in Java applications and building real-time predictive pipelines with Spring Cloud Data Flow. Several TensorFlow processors for tasks like object detection, image recognition, and sentiment analysis are presented.
The document discusses Spring Cloud Kubernetes, which provides features for running Spring Boot applications on Kubernetes including service discovery, configuration with ConfigMaps and secrets, routing, and health monitoring. It notes that Spring Cloud Kubernetes is available in the Greenwich release train and requires Spring Boot 2.1. It also highlights that the project is community driven.
The document discusses Spring Cloud Kubernetes, which provides features for running Spring Boot applications on Kubernetes including service discovery, configuration via ConfigMaps and secrets, routing, and health monitoring. It notes that Spring Cloud Kubernetes is available in the Greenwich release train and requires Spring Boot 2.1.x. It also mentions that a demo is provided and that the project is community driven.
Similar to Numbers in the Hidden: A Pragmatic View of 'Nirvana' (20)
What AI Means For Your Product Strategy And What To Do About ItVMware Tanzu
The document summarizes Matthew Quinn's presentation on "What AI Means For Your Product Strategy And What To Do About It" at Denver Startup Week 2023. The presentation discusses how generative AI could impact product strategies by potentially solving problems companies have ignored or allowing competitors to create new solutions. Quinn advises product teams to evaluate their strategies and roadmaps, ensure they understand user needs, and consider how AI may change the problems being addressed. He provides examples of how AI could influence product development for apps in home organization and solar sales. Quinn concludes by urging attendees not to ignore AI's potential impacts and to have hard conversations about emerging threats and opportunities.
Make the Right Thing the Obvious Thing at Cardinal Health 2023VMware Tanzu
This document discusses the evolution of internal developer platforms and defines what they are. It provides a timeline of how technologies like infrastructure as a service, public clouds, containers and Kubernetes have shaped developer platforms. The key aspects of an internal developer platform are described as providing application-centric abstractions, service level agreements, automated processes from code to production, consolidated monitoring and feedback. The document advocates that internal platforms should make the right choices obvious and easy for developers. It also introduces Backstage as an open source solution for building internal developer portals.
Enhancing DevEx and Simplifying Operations at ScaleVMware Tanzu
Cardinal Health introduced Tanzu Application Service in 2016 and set up foundations for cloud native applications in AWS and later migrated to GCP in 2018. TAS has provided Cardinal Health with benefits like faster development of applications, zero downtime for critical applications, hosting over 5,000 application instances, quicker patching for security vulnerabilities, and savings through reduced lead times and staffing needs.
Dan Vega discussed upcoming changes and improvements in Spring including Spring Boot 3, which will have support for JDK 17, Jakarta EE 9/10, ahead-of-time compilation, improved observability with Micrometer, and Project Loom's virtual threads. Spring Boot 3.1 additions were also highlighted such as Docker Compose integration and Spring Authorization Server 1.0. Spring Boot 3.2 will focus on embracing virtual threads from Project Loom to improve scalability of web applications.
Platforms, Platform Engineering, & Platform as a ProductVMware Tanzu
This document discusses building platforms as products and reducing developer toil. It notes that platform engineering now encompasses PaaS and developer tools. A quote from Mercedes-Benz emphasizes building platforms for developers, not for the company itself. The document contrasts reactive, ticket-driven approaches with automated, self-service platforms and products. It discusses moving from considering platforms as a cost center to experts that drive business results. Finally, it provides questions to identify sources of developer toil, such as issues with workstation setup, running software locally, integration testing, committing changes, and release processes.
This document provides an overview of building cloud-ready applications in .NET. It defines what makes an application cloud-ready, discusses common issues with legacy applications, and recommends design patterns and practices to address these issues, including loose coupling, high cohesion, messaging, service discovery, API gateways, and resiliency policies. It includes code examples and links to additional resources.
Dan Vega discussed new features and capabilities in Spring Boot 3 and beyond, including support for JDK 17, Jakarta EE 9, ahead-of-time compilation, observability with Micrometer, Docker Compose integration, and initial support for Project Loom's virtual threads in Spring Boot 3.2 to improve scalability. He provided an overview of each new feature and explained how they can help Spring applications.
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfVMware Tanzu
Spring Cloud Gateway is a gateway that provides routing, security, monitoring, and resiliency capabilities for microservices. It acts as an API gateway and sits in front of microservices, routing requests to the appropriate microservice. The gateway uses predicates and filters to route requests and modify requests and responses. It is lightweight and built on reactive principles to enable it to scale to thousands of routes.
This document appears to be from a VMware Tanzu Developer Connect presentation. It discusses Tanzu Application Platform (TAP), which provides a developer experience on Kubernetes across multiple clouds. TAP aims to unlock developer productivity, build rapid paths to production, and coordinate the work of development, security and operations teams. It offers features like pre-configured templates, integrated developer tools, centralized visibility and workload status, role-based access control, automated pipelines and built-in security. The presentation provides examples of how these capabilities improve experiences for developers, operations teams and security teams.
The document provides information about a Tanzu Developer Connect Workshop on Tanzu Application Platform. The agenda includes welcome and introductions on Tanzu Application Platform, followed by interactive hands-on workshops on the developer experience and operator experience. It will conclude with a quiz, prizes and giveaways. The document discusses challenges with developing on Kubernetes and how Tanzu Application Platform aims to improve the developer experience with features like pre-configured templates, developer tools integration, rapid iteration and centralized management.
The Tanzu Developer Connect is a hands-on workshop that dives deep into TAP. Attendees receive a hands on experience. This is a great program to leverage accounts with current TAP opportunities.
The Tanzu Developer Connect is a hands-on workshop that dives deep into TAP. Attendees receive a hands on experience. This is a great program to leverage accounts with current TAP opportunities.
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023VMware Tanzu
This document discusses simplifying and scaling enterprise Spring applications in the cloud. It provides an overview of Azure Spring Apps, which is a fully managed platform for running Spring applications on Azure. Azure Spring Apps handles infrastructure management and application lifecycle management, allowing developers to focus on code. It is jointly built, operated, and supported by Microsoft and VMware. The document demonstrates how to create an Azure Spring Apps service, create an application, and deploy code to the application using three simple commands. It also discusses features of Azure Spring Apps Enterprise, which includes additional capabilities from VMware Tanzu components.
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootVMware Tanzu
The document discusses 15 factors for building cloud native applications with Kubernetes based on the 12 factor app methodology. It covers factors such as treating code as immutable, externalizing configuration, building stateless and disposable processes, implementing authentication and authorization securely, and monitoring applications like space probes. The presentation aims to provide an overview of the 15 factors and demonstrate how to build cloud native applications using Kubernetes based on these principles.
SpringOne Tour: The Influential Software EngineerVMware Tanzu
The document discusses the importance of culture in software projects and how to influence culture. It notes that software projects involve people and personalities, not just technology. It emphasizes that culture informs everything a company does and is very difficult to change. It provides advice on being aware of your company's culture, finding ways to inculcate good cultural values like writing high-quality code, and approaches for influencing decision makers to prioritize culture.
SpringOne Tour: Domain-Driven Design: Theory vs PracticeVMware Tanzu
This document discusses domain-driven design, clean architecture, bounded contexts, and various modeling concepts. It provides examples of an e-scooter reservation system to illustrate domain modeling techniques. Key topics covered include identifying aggregates, bounded contexts, ensuring single sources of truth, avoiding anemic domain models, and focusing on observable domain behaviors rather than implementation details.
Measures in SQL (SIGMOD 2024, Santiago, Chile)Julian Hyde
SQL has attained widespread adoption, but Business Intelligence tools still use their own higher level languages based upon a multidimensional paradigm. Composable calculations are what is missing from SQL, and we propose a new kind of column, called a measure, that attaches a calculation to a table. Like regular tables, tables with measures are composable and closed when used in queries.
SQL-with-measures has the power, conciseness and reusability of multidimensional languages but retains SQL semantics. Measure invocations can be expanded in place to simple, clear SQL.
To define the evaluation semantics for measures, we introduce context-sensitive expressions (a way to evaluate multidimensional expressions that is consistent with existing SQL semantics), a concept called evaluation context, and several operations for setting and modifying the evaluation context.
A talk at SIGMOD, June 9–15, 2024, Santiago, Chile
Authors: Julian Hyde (Google) and John Fremlin (Google)
https://doi.org/10.1145/3626246.3653374
Microservice Teams - How the cloud changes the way we workSven Peters
A lot of technical challenges and complexity come with building a cloud-native and distributed architecture. The way we develop backend software has fundamentally changed in the last ten years. Managing a microservices architecture demands a lot of us to ensure observability and operational resiliency. But did you also change the way you run your development teams?
Sven will talk about Atlassian’s journey from a monolith to a multi-tenanted architecture and how it affected the way the engineering teams work. You will learn how we shifted to service ownership, moved to more autonomous teams (and its challenges), and established platform and enablement teams.
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Consistent toolbox talks are critical for maintaining workplace safety, as they provide regular opportunities to address specific hazards and reinforce safe practices.
These brief, focused sessions ensure that safety is a continual conversation rather than a one-time event, which helps keep safety protocols fresh in employees' minds. Studies have shown that shorter, more frequent training sessions are more effective for retention and behavior change compared to longer, infrequent sessions.
Engaging workers regularly, toolbox talks promote a culture of safety, empower employees to voice concerns, and ultimately reduce the likelihood of accidents and injuries on site.
The traditional method of conducting safety talks with paper documents and lengthy meetings is not only time-consuming but also less effective. Manual tracking of attendance and compliance is prone to errors and inconsistencies, leading to gaps in safety communication and potential non-compliance with OSHA regulations. Switching to a digital solution like Safelyio offers significant advantages.
Safelyio automates the delivery and documentation of safety talks, ensuring consistency and accessibility. The microlearning approach breaks down complex safety protocols into manageable, bite-sized pieces, making it easier for employees to absorb and retain information.
This method minimizes disruptions to work schedules, eliminates the hassle of paperwork, and ensures that all safety communications are tracked and recorded accurately. Ultimately, using a digital platform like Safelyio enhances engagement, compliance, and overall safety performance on site. https://safelyio.com/
Preparing Non - Technical Founders for Engaging a Tech AgencyISH Technologies
Preparing non-technical founders before engaging a tech agency is crucial for the success of their projects. It starts with clearly defining their vision and goals, conducting thorough market research, and gaining a basic understanding of relevant technologies. Setting realistic expectations and preparing a detailed project brief are essential steps. Founders should select a tech agency with a proven track record and establish clear communication channels. Additionally, addressing legal and contractual considerations and planning for post-launch support are vital to ensure a smooth and successful collaboration. This preparation empowers non-technical founders to effectively communicate their needs and work seamlessly with their chosen tech agency.Visit our site to get more details about this. Contact us today www.ishtechnologies.com.au
Using Query Store in Azure PostgreSQL to Understand Query PerformanceGrant Fritchey
Microsoft has added an excellent new extension in PostgreSQL on their Azure Platform. This session, presented at Posette 2024, covers what Query Store is and the types of information you can get out of it.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
Flutter is a popular open source, cross-platform framework developed by Google. In this webinar we'll explore Flutter and its architecture, delve into the Flutter Embedder and Flutter’s Dart language, discover how to leverage Flutter for embedded device development, learn about Automotive Grade Linux (AGL) and its consortium and understand the rationale behind AGL's choice of Flutter for next-gen IVI systems. Don’t miss this opportunity to discover whether Flutter is right for your project.
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesQuickdice ERP
Explore the seamless transition to e-invoicing with this comprehensive guide tailored for Saudi Arabian businesses. Navigate the process effortlessly with step-by-step instructions designed to streamline implementation and enhance efficiency.
Value Context:
- Develope Faster
- Less Boilerplate code, less errors
- CI/CD – Automated integrating and deployment to production
- Elasticity
- Improved DevOps
Lose Diego Cell
Page out To Garrent after BMC patrol 10 min
Determine VM is dead – 15-30
Create a new VM from a template – 10 Minutes
Add IP network - 10 minutes
ACLs, etc, chef
Install chef:
15 min – 30 min
Best Case 2-3 hours
PCF Auto rebalances lost apps/services to available cells
Between Round 2 and Rount 3, the project got pushed in May 2017due to priorities, and picked up again in Early 2018.
Lose Diego Cell
Page out To Garrent after BMC patrol 10 min
Determine VM is dead – 15-30
Create a new VM from a template – 10 Minutes
Add IP network - 10 minutes
ACLs, etc, chef
Install chef:
15 min – 30 min
Best Case 2-3 hours
PCF Auto rebalances lost apps/services to available cells
How quickly does the pipeline
Efficient and Effective
Keep everything in one tool
Bot fetches release notes for stemcell and tile.
Bot should be able to know which foundation and which tile using params set on the pipeline
Bot should know if the stemcell version is updated
Bot should know if the tile version is updated
Continuous integration environment would take the glob pattern for the product version and stemcell and upload and apply the changes to the ci environment when a version is published to pivnet that matches the glob pattern.
Pool Locks - ensures that only one change is flowing at a time
multiple pipelines can be running at a time but only one will be able to apply the changes
when the updates succeed to be applied a PR will be created to the next foundation in the chain