popular-movie-store - A very basic shopping cart application to show Stateful Canary Deployments on Kubernetes using Spring Boot and Infinispan

  •        6

A simple movie store example which uses JDG and Spring Session to demonstrate , HTTP Session management during normal and canary deployment

https://github.com/redhat-developer-demos/popular-movie-store


Dependencies:

org.infinispan:infinispan-bom:9.0.0.Final
org.springframework.boot:spring-boot-dependencies:1.5.2.RELEASE

Tags
Implementation
License
Platform

   




Related Projects

kubernetes-for-java-developers - A Day in Java Developer’s Life, with a taste of Kubernetes

  •    Java

Deploying your Java application in a Kubernetes cluster could feel like Alice in Wonderland. You keep going down the rabbit hole and don’t know how to make that ride comfortable. This repository explains how a Java application can be deployed, tested, debugged and monitored in Kubernetes. In addition, it also talks about canary deployment and deployment pipeline. We will use a simple Java application built using Spring Boot. The application publishes a REST endpoint that can be invoked at http://{host}:{port}/hello.

spring-cloud-kubernetes - Kubernetes integration with Spring Cloud Discovery Client, Configuration, etc

  •    Java

This project provides an implementation of Discovery Client for Kubernetes. This allows you to query Kubernetes endpoints (see services) by name. A service is typically exposed by the Kubernetes API server as a collection of endpoints which represent http, https addresses that a client can access from a Spring Boot application running as a pod. This discovery feature is also used by the Spring Cloud Kubernetes Ribbon or Zipkin projects to fetch respectively the list of the endpoints defined for an application to be load balanced or the Zipkin servers available to send the traces or spans. Some Spring Cloud components use the DiscoveryClient in order to obtain info about the local service instance. For this to work you need to align the service name with the spring.application.name property.

gs-spring-boot - Building an Application with Spring Boot :: Learn how to build an application with minimal configuration

  •    Java

This guide provides a sampling of how Spring Boot helps you accelerate and facilitate application development. As you read more Spring Getting Started guides, you will see more use cases for Spring Boot. It is meant to give you a quick taste of Spring Boot. If you want to create your own Spring Boot-based project, visit Spring Initializr, fill in your project details, pick your options, and you can download either a Maven build file, or a bundled up project as a zip file. You’ll build a simple web application with Spring Boot and add some useful services to it.

k8s-deployment-strategies - Kubernetes deployment strategies explained

  •    Go

In Kubernetes there is few different way to release an application, you have to carefully choose the right strategy to make your infrastructure resilient. These examples were created and tested on Minikube running with Kubernetes v1.10.0.


Eclipse JKube - Build Cloud-Native Java Applications without a hassle

  •    Java

Eclipse JKube is a collection of plugins and libraries that are used for building container images using Docker, JIB or S2I build strategies. Eclipse JKube generates and deploys Kubernetes/OpenShift manifests at compile time too. It brings your Java applications on to Kubernetes and OpenShift by leveraging the tasks required to make your application cloud-native. Eclipse JKube also provides a set of tools such as watch, debug, log, etc. to improve your developer experience. This project contains various building blocks for the Kubernetes Java developer toolbox.

gs-spring-boot-docker - Spring Boot with Docker :: Learn how to create a Docker container from a Spring Boot application with Maven or Gradle

  •    Java

This guide walks you through the process of building a Docker image for running a Spring Boot application. Docker is a Linux container management toolkit with a "social" aspect, allowing users to publish container images and consume those published by others. A Docker image is a recipe for running a containerized process, and in this guide we will build one for a simple Spring boot application.

flagger - Istio and App Mesh progressive delivery Kubernetes operator

  •    Go

Flagger is a Kubernetes operator that automates the promotion of canary deployments using Istio or App Mesh routing for traffic shifting and Prometheus metrics for canary analysis. The canary analysis can be extended with webhooks for running acceptance tests, load tests or any other custom validation. Flagger implements a control loop that gradually shifts traffic to the canary while measuring key performance indicators like HTTP requests success rate, requests average duration and pods health. Based on analysis of the KPIs a canary is promoted or aborted, and the analysis result is published to Slack.

cf-for-k8s - The open source deployment manifest for Cloud Foundry on Kubernetes

  •    Shell

Cloud Foundry For Kubernetes (cf-for-k8s) blends the popular CF developer API with Kubernetes, Istio, and other open source technologies. The project aims to improve developer productivity for organizations using Kubernetes. cf-for-k8s can be installed atop any conformant environment in minutes. If you're new to Kubernetes, we recommend this Getting Started Guide, which walks you though deploying cf-for-k8s on your machine using a local kind (Kubernetes In Docker) cluster. The guide configures your cf-for-k8s deployment as a developer-edition that runs on your laptop and can handle approximately 10 small applications.

Backend-Boilerplate - Boilerplate for Your Server Side(Backend) Application, Spring Boot | Node

  •    Java

Boilerplate for Your Server Side(Backend) Application, Spring Boot | Node.js | Go | Wexin 💫 服务端项目模板

Apache APISIX - Dynamic, real-time, high-performance API gateway

  •    Lua

Apache APISIX is a dynamic, real-time, high-performance API gateway. APISIX provides rich traffic management features such as load balancing, dynamic upstream, canary release, circuit breaking, authentication, observability, and more. You can use Apache APISIX to handle traditional north-south traffic, as well as east-west traffic between services. It can also be used as a k8s ingress controller.

spring-swagger2markup-demo - A demo project template using Swagger2Markup, Spring Boot, Springfox and spring-restdocs

  •    Java

This project is a Swagger2Markup (AsciiDoc and GitHub Flavored Markdown) converter demo using Spring Boot, springfox and spring-restdocs. The demo shows how to generate static docs (HTML5 and PDF) with the swagger2markup-gradle-plugin and serve them in a Spring Boot app under http://localhost:9080/docs/index.html and http://localhost:9080/docs/index.pdf. See Swagger2Markup and swagger2markup-gradle-plugin for more details and usage guide.

JHipster - Create Spring Boot + Angular projects in seconds

  •    Java

JHipster is a Yeoman generator, used to create a Spring Boot + Angular project. Its goal is to generate for you a complete and modern Web app. It provides a high-performance and robust Java stack on the server side with Spring Boot, A sleek, modern, mobile-first front-end with Angular and Bootstrap and a powerful workflow to build your application with Yeoman, Webpack/Gulp and Maven/Gradle.

spring-cloud-kubernetes - Kubernetes integration with Spring Cloud

  •    Java

Some spring cloud components use the DiscoveryClient in order obtain info about the local service instance. For this to work you need to align the service name with spring.application.name.The most common approach to configure your spring boot application is to edit the application.yaml file. Often the user may override properties by specifying system properties or env variables.

Infinispan - Key value NOSQL data store and data grid

  •    Java

Infinispan is an extremely scalable, highly available key/value NoSQL datastore and distributed data grid platform. The purpose of Infinispan is to expose a data structure that is highly concurrent, designed ground-up to make the most of modern multi-processor/multi-core architectures while at the same time providing distributed cache capabilities. Infinispan offers enterprise features such as efficient eviction algorithms to control memory usage as well as JTA compatibility.

microservices-demo - Deployment scripts & config for Sock Shop

  •    Shell

The application is the user-facing part of an online shop that sells socks. It is intended to aid the demonstration and testing of microservice and cloud native technologies. It is built using Spring Boot, Go kit and Node.js and is packaged in Docker containers.

azure-spring-cloud-training - Guides and tutorials to make the most out of Azure Spring Cloud

  •    Java

You will find here a full workshop on Azure Spring Cloud, including guides and demos. This lab is based on a public workshop created by Julien Dubois and available for free to everyone, under the MIT license.

tut-spring-boot-oauth2 - Spring Boot and OAuth2:: A tutorial on "social" login and single sign on with Facebook and Github

  •    Java

This guide shows you how to build a sample app doing various things with "social login" using OAuth2 and Spring Boot. It starts with a simple, single-provider single-sign on, and works up to a self-hosted OAuth2 Authorization Server with a choice of authentication providers (Facebook or Github). The samples are all single-page apps using Spring Boot and Spring OAuth on the back end. They also all use plain jQuery on the front end, but the changes needed to convert to a different JavaScript framework or to use server side rendering would be minimal. Because one of the samples is a full OAuth2 Authorization Server we have used the shim JAR which supports bridging from Spring Boot 2.0 to the old Spring Security OAuth2 library. The simpler samples could also be implemented using the native OAuth2 support in Spring Boot security features. The configuration is very similar.