List of videos

Getting Thymeleaf ready for Spring 5 and Reactive - Daniel Fernández @ Spring I/O 2017

Spring I/O 2017 - 18 -19 May, Barcelona Slides: https://speakerdeck.com/dfernandez/o-2017-getting-thymeleaf-ready-for-spring-5-and-reactive GitHub repo: https://github.com/danielfernandez/reactive-matchday Spring 5 is here and it brings a lot of awesomeness — but the star of the show is no doubt the new reactive web framework. Thymeleaf has been the server-side template engine of choice for a lot Spring users for a while now, so once the new Spring reactive infrastructure was sketched some time ago, we took up the challenge of adapting Thymeleaf to the needs of the new framework. From adjusting code to the new APIs –that was easy– to actually making the engine respond to back-pressure requests from consumers –that definitely wasn't–, Thymeleaf had to undergo a good amount of refactoring and rethinking just before the release of Thymeleaf 3.0 last year. The result was a Java server-side template engine able to be as friendly to a reactive application environment as one would need: from normal, good-old templating operation to turning Thymeleaf into an on-the-fly generator of HTML for reactive streams/publishers of data. This talk will offer a quite brief introduction to Thymeleaf and its features for those new to the technology, and then explain the challenges posed by the integration of Thymeleaf with Spring's reactive web framework and the approach of the project to the reactive world in general.

Watch
Developing a Spring Boot Starter for distributed logging - Carlos Barragán @ Spring I/O 2017

Spring I/O 2017 - 18 -19 May, Barcelona Logging plays an important role on a distributed system. If done right, it helps you when you need it the most: troubleshooting problems in production. We are migrating our current project to Pivotal Cloud Foundry using Spring Boot. We developed a small Spring Boot Starter that can be used by every Spring Boot application to do the logging according to the needs of our system. In this way, the teams can concentrate on developing the business logic of the application. Our Spring Boot starter takes care of automatically logging important logging metadata like trackingId, service name, etc. In this presentation I would like to show you how we tackle the problem of logging in distributed systems by developing a simple but powerful Spring Boot Starter.

Watch
Reactive Meets Data Access - Christoph Strobl @ Spring I/O 2017

Spring I/O 2017 - 18 -19 May, Barcelona GitHub repo: https://github.com/christophstrobl/spring-data-reactive-demo Almost 6 years after its first public release the Spring Data Release train approaches a major version bump of its core modules. In this session we'll revisit key concepts of Spring Data with a strong focus on the Java8 baseline upgrade, lazy component initialization and reactive data access. Code samples outline general strategies as well as store specifics like infinite streams with MongoDB.

Watch
Building on spring boot lastminute.com microservices way - Luca Viola & Michele Orsi @ Spring I/O

Spring I/O 2017 - 18 -19 May, Barcelona In the process of migrating our architecture to microservices we suffered from a lack of alignment across the different applications we have. This brought several painful effects to our organisation, like missing heterogeneous procedures, problems in managing services at scale and a lot of duplicated work across development teams. Almost one year ago we started to develop a common internal framework based on Spring Boot to tackle problems at different levels. We began with monitoring, logging and metrics and we quickly added several other features. One of the main benefits we achieved was to streamline and improve consistency in the way we deploy and support our services from an ops perspective. In this talk we describe the journey that brings us to what we have at the moment: a project inherited from more than 40 different microservices that provide a lot of common features and a clean space where our new contribution model can take place.

Watch
Growing Spring-based commons, lessons learned - Piotr Betkier @ Spring I/O 2017

Spring I/O 2017 - 18 -19 May, Barcelona How to design and develop internal tools ecosystems, so called commons? You find these in almost every company. Not so obvious task though if you need such ecosystem to stay powerful and easy to use despite constant changes in requirements. We'll dive into structuring the ecosystem, cover API design, handling of dependencies, deciding on features and much more. All this coming from our experience (and mistakes) of building a Spring-based platform and libraries for the microservice infrastructure at Allegro. I hope to leave you with practical knowledge essential for building successful tools – both for growing internal commons and for creating useful open-source libraries in general.

Watch
Manage distributed configuration and secrets with Spring Cloud and Vault - Andreas Falk

Spring I/O 2017 - 18 -19 May, Barcelona Slides: https://www.slideshare.net/AndreasFalk2/manage-distributed-configuration-and-secrets-with-spring-cloud-and-vault-spring-io-2017 Running multiple instances of microservices as docker images or in the cloud is widely adopted these days. But what about your configuration and secrets? Do you spread all values using application local property files? Do you still store secrets in clear text? In case you are encrypting passwords where do you store the key to decrypt these? Do you already rotate database credentials regularly? In this session you will learn how to externalize your configuration using spring cloud config and store your secrets safely using the recently released spring cloud vault config project. First I will give you a short demo on how to externalize all your application configuration values to a git repository. Then after a general introduction into vault you will see how spring cloud vault config facilitates the integration of vault into your application. After this session you hopefully will be well prepared to start using externalized configuration and to stop ever storing secrets again in an unsafe way.

Watch
Develop and Run your Spring Boot application on Google App Engine Flexible - Rafael Sánchez

Spring I/O 2017 - 18 -19 May, Barcelona Link: https://codelabs.developers.google.com/codelabs/cloud-app-engine-springboot/#0 See how we take a standard Spring Boot application, run it on Google Cloud Platform. We will demonstrate how your app will benefit from seamless scalability, and how to use our integrated tooling for testing and diagnostics to gain insights into what's going on with your application in production. In this talk, we go through this flow by deploying the application to the cloud via our build tooling, using two approaches: Google App Engine flexible and Kubernetes.

Watch
From Zero to Open Source Hero: Contributing to Spring projects - Vedran Pavić @ Spring I/O 2017

Spring I/O 2017 - 18 -19 May, Barcelona Slides: https://speakerdeck.com/vpavic/from-zero-to-open-source-hero-contributing-to-spring-projects-1 With any kind of activity, starting out is often the hardest part, and contributing to open-source project is no exception to this. Join this talk by a regular contributor to Spring projects to find out how to kick-start your contributions! This session is a story about author's journey as a contributor to open-source community and Spring projects in particular, a journey the saw him become a committer to Spring Session less than 14 months after authoring his first pull request. The session will present a deep dive into workflow behind a typical pull request to Spring project, stressing the importance of topics such as managing forks, updating pull requests, writing tests, code consistency, and offer many tips & tricks that should help you make your contributions a successful experience.

Watch
Making microservices micro with Istio Service Mesh & Kubernetes by Ray Tsang @ Spring I/O 2018

Spring I/O 2018 - Barcelona, 24-25 May Microservices are here to stay. When applied properly, microservices techniques and culture ultimately help us continuously improve business at a faster pace than traditional architecture. However, microservices architecture itself can be complex to configure. All of a sudden, we are faced with the need for a service discovery server, how do we store service metadata, make decisions on whether to use client side load balancing or server side load balancing, deal with network resiliency, think how do we enforce service policies and audit, trace nested services calls…. The list goes on. In this talk, Ray will introduce Istio, an open source service mesh framework created by Google, IBM, and Lyft. We’ll see how the service mesh work, the technology behind it, and how it addresses aforementioned concerns.

Watch