Kubernetes is becoming the de-facto platform to deploy our application nowadays. But this movement also implies some changes in the way we code our applications. Before this change, we just developed a monolith application where everything was up and running up front, now we are breaking down this monolith into (micro)services architecture and everything is interconnected with the network. Although it might seem easy, done properly is not an easy as there are some challenges to address that was not in a monolith architecture.
In this session, we’re going to start discussing what are these challenges (ie fault tolerance, service discovery, open tracing, or health checks) and demonstrate how they can be solved using Eclipse MicroProfile specification.
Come to this session to learn how to develop a successful Kubernetes-Native application using Quarkus, a Java ecosystem way to develop cloud-first, container-native, serverless focused and Kubernetes optimized.
Probably you are curious about this thing called Reactive Programming. Reactive Programming is another programming paradigm that in most of the cases, we are not used to coding in our day-to-day work, as the imperative way is the common one. This makes learning and thinking in a reactive way harder. One of the main problems I have found when learning and reading material about Reactive Programming is that they never tackle enterprise use cases. In this session, we are going to skip the cute ideas that are normally part of a reactive programming talk and focus on how to use it in the real world. Don't be the last developer to board this train and move your reactive skills from novice to expert.
Chaos Engineering is used in a distributed system to test integrally all the application by simulating error conditions within the system and observes how the application reacts to that stimulus. With all this information and analyzing it correctly, you can write applications more resilient to the failures. This talk will provide an introduction to the principles of Chaos Engineering, how to perform experiments, identify the weakness of the architecture and fix these problems.
Come to this session to learn different tools like Istio, Chaos Toolkit or Glooshot to run Chaos Engineering in Kubernetes and what strategies you can use to prevent chaos from taking over your system.
Chaos Engineering is used in a distributed system to test integrally all the application by simulating error conditions within the system and observes how the application reacts to that stimulus. With all this information and analyzing it correctly, you can write applications more resilient to the failures. This talk will provide an introduction to the principles of Chaos Engineering, how to perform experiments, identify the weakness of the architecture and fix these problems.
Come to this session to learn different tools like Istio, Chaos Toolkit or Glooshot to run Chaos Engineering in Kubernetes and what strategies you can use to prevent chaos from taking over your system.
DevOps has grown in popularity in recent years, particularly in (software) companies that want to reduce lead time to be measured in days/weeks instead of months/years. If you want to make sure your software does the right things and does things right, you need to test it implacably. The big problem is that companies see is the testing phase as the bottleneck—and it is—of the process slowing down product release. To change that, we need a new way of testing our applications, making the release process of an application a testing process as well and involving the QA from the beginning within the team. QAs are not a separate team anymore (DevTestOps). How is the testing pyramid affected? In this session, we will not only describe, but actively demonstrate several techniques that you can use immediately to start testing in production and speed up your release cycle to unimaginable limits.
Testing in Production: From DevTestOops to DevTestOpsAlex Soto
DevOps has grown in popularity in recent years, particularly in software companies that want to reduce lead time to be measured in days/weeks instead of months/years. If you want to make sure your software does the right things and does things right, you need to test it implacably. The big problem is that companies see the testing phase as the bottleneck of the process slowing down product release.
To change that, we need a new way of testing our applications, making the release process of an application a testing process as well and involving the QA from the beginning within the team. QAs are not a separate team anymore: DevTestOps. How is the testing pyramid affected? In this session, we will not only describe but actively demonstrate several techniques that you can use immediately following the session for starting testing in production and speeding up your release cycle to unimaginable limits.
Demo1: https://www.youtube.com/watch?v=3mJX38m-D3A
Demo2: https://www.youtube.com/watch?v=IcRsb-boWA4
Demo3: https://youtu.be/F15ZeZuqo54
Java was born in the mid-90s, the era of TLC and Boyz II Men, long before the rise of Linux server virtualization and the Linux container.
We took great pride in running Java applications for weeks if not months without restarts and Java assumed the whole computer belonged to itself, that it could consume all available memory and CPU. In this presentation, we will demonstrate the problems associated using Java for "microservices", and how the open source ecosystem is working to insure the future of Java by being cloud first, container native, serverless focused and Kubernetes optimized. This is where GraalVM meets Quarkus, bringing server-side and enterprise-capable Java to enable you to build truly cloud native apps
DevOps is growing in popularity in last years, particularly in (software) companies that want to reduce its lead time (time to business value from idea to production) measured in days/weeks instead of months/years?
If you want your software to do the right things and do these things right, you need to test it implacably.
The big problem is that companies see (and it is) the testing phase as the bottleneck of the process slowing down product release. To change that, we need a new way of testing our applications, making the release of an application a testing process as well, and involve QA since the beginning within the team. QAs are not a separate team anymore (DevTestOps).
What is the role of QAs in this new approach? How is the testing pyramid affected? How you can fail on trying to speed up release frequency?
In this session, we will not only describe but also actively demonstrate several techniques that you can use immediately following the session for testing applications like unicorns.
Kubernetes is becoming the de-facto platform to deploy our application nowadays. But this movement also implies some changes in the way we code our applications. Before this change, we just developed a monolith application where everything was up and running up front, now we are breaking down this monolith into (micro)services architecture and everything is interconnected with the network. Although it might seem easy, done properly is not an easy as there are some challenges to address that was not in a monolith architecture.
In this session, we’re going to start discussing what are these challenges (ie fault tolerance, service discovery, open tracing, or health checks) and demonstrate how they can be solved using Eclipse MicroProfile specification.
Come to this session to learn how to develop a successful Kubernetes-Native application using Quarkus, a Java ecosystem way to develop cloud-first, container-native, serverless focused and Kubernetes optimized.
Probably you are curious about this thing called Reactive Programming. Reactive Programming is another programming paradigm that in most of the cases, we are not used to coding in our day-to-day work, as the imperative way is the common one. This makes learning and thinking in a reactive way harder. One of the main problems I have found when learning and reading material about Reactive Programming is that they never tackle enterprise use cases. In this session, we are going to skip the cute ideas that are normally part of a reactive programming talk and focus on how to use it in the real world. Don't be the last developer to board this train and move your reactive skills from novice to expert.
Chaos Engineering is used in a distributed system to test integrally all the application by simulating error conditions within the system and observes how the application reacts to that stimulus. With all this information and analyzing it correctly, you can write applications more resilient to the failures. This talk will provide an introduction to the principles of Chaos Engineering, how to perform experiments, identify the weakness of the architecture and fix these problems.
Come to this session to learn different tools like Istio, Chaos Toolkit or Glooshot to run Chaos Engineering in Kubernetes and what strategies you can use to prevent chaos from taking over your system.
Chaos Engineering is used in a distributed system to test integrally all the application by simulating error conditions within the system and observes how the application reacts to that stimulus. With all this information and analyzing it correctly, you can write applications more resilient to the failures. This talk will provide an introduction to the principles of Chaos Engineering, how to perform experiments, identify the weakness of the architecture and fix these problems.
Come to this session to learn different tools like Istio, Chaos Toolkit or Glooshot to run Chaos Engineering in Kubernetes and what strategies you can use to prevent chaos from taking over your system.
DevOps has grown in popularity in recent years, particularly in (software) companies that want to reduce lead time to be measured in days/weeks instead of months/years. If you want to make sure your software does the right things and does things right, you need to test it implacably. The big problem is that companies see is the testing phase as the bottleneck—and it is—of the process slowing down product release. To change that, we need a new way of testing our applications, making the release process of an application a testing process as well and involving the QA from the beginning within the team. QAs are not a separate team anymore (DevTestOps). How is the testing pyramid affected? In this session, we will not only describe, but actively demonstrate several techniques that you can use immediately to start testing in production and speed up your release cycle to unimaginable limits.
Testing in Production: From DevTestOops to DevTestOpsAlex Soto
DevOps has grown in popularity in recent years, particularly in software companies that want to reduce lead time to be measured in days/weeks instead of months/years. If you want to make sure your software does the right things and does things right, you need to test it implacably. The big problem is that companies see the testing phase as the bottleneck of the process slowing down product release.
To change that, we need a new way of testing our applications, making the release process of an application a testing process as well and involving the QA from the beginning within the team. QAs are not a separate team anymore: DevTestOps. How is the testing pyramid affected? In this session, we will not only describe but actively demonstrate several techniques that you can use immediately following the session for starting testing in production and speeding up your release cycle to unimaginable limits.
Demo1: https://www.youtube.com/watch?v=3mJX38m-D3A
Demo2: https://www.youtube.com/watch?v=IcRsb-boWA4
Demo3: https://youtu.be/F15ZeZuqo54
Java was born in the mid-90s, the era of TLC and Boyz II Men, long before the rise of Linux server virtualization and the Linux container.
We took great pride in running Java applications for weeks if not months without restarts and Java assumed the whole computer belonged to itself, that it could consume all available memory and CPU. In this presentation, we will demonstrate the problems associated using Java for "microservices", and how the open source ecosystem is working to insure the future of Java by being cloud first, container native, serverless focused and Kubernetes optimized. This is where GraalVM meets Quarkus, bringing server-side and enterprise-capable Java to enable you to build truly cloud native apps
DevOps is growing in popularity in last years, particularly in (software) companies that want to reduce its lead time (time to business value from idea to production) measured in days/weeks instead of months/years?
If you want your software to do the right things and do these things right, you need to test it implacably.
The big problem is that companies see (and it is) the testing phase as the bottleneck of the process slowing down product release. To change that, we need a new way of testing our applications, making the release of an application a testing process as well, and involve QA since the beginning within the team. QAs are not a separate team anymore (DevTestOps).
What is the role of QAs in this new approach? How is the testing pyramid affected? How you can fail on trying to speed up release frequency?
In this session, we will not only describe but also actively demonstrate several techniques that you can use immediately following the session for testing applications like unicorns.
Istio service mesh & pragmatic microservices architectureAlex Soto
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced. Does your organization wish to achieve unicorn like speed? With N deploys per day? Or a lead time (time to business value from idea to production) measured in days/weeks instead of months/years? In this session, we will not only describe how to use Istio and Kubernetes but actively demonstrate 3 specific techniques that you can use immediately following the session.
Currently, Istio is gaining a lot of traction as service-mesh implementation for Kubernetes. In this session, we are going to explore how to install Istio, and how to use it to release new versions of our services correctly.
Zero Downtime Deployment in Microservices eraAlex Soto
ou joined the DevOps movement and want to release software even faster and safer. You started reading about Advanced deployment techniques like Blue-Green Deployment, Canary Releases or Dark Shadow Technique. But how do you implement them without disrupting your users in production? With Zero Downtime! This is easy with your code, but what about ephemeral and persistent states? Most of the examples out there does not tackle this scenario (which is the most common in real systems). Come to this session and you’ll learn in a practical way how you can achieve zero downtime deployments applying advanced deployment techniques for maintaining the ephemeral and persistent state of your microservice application.
As we start to go toward cloud-native infrastructure and build our applications out of microservices, we must fully face the drawbacks and challenges to doing so. Some of these challenges include how to consistently monitor and collect statistics, tracing, and another telemetry, how to add resiliency in the face of unexpected failure, how to do powerful feature routing (ie feature graduation, tap compare ) and much more like securing your services correctly.
Service mesh, in general, helps developers solve this in a non-invasive way.
In this session, we'll show how you can take advantage of these capabilities and show you some patterns that you can implement easily with a service mesh to make your delivery to production smoothly and without surprises.
We expect most developers haven't adequately solved for these issues, so we'll take it step by step and build up a strong understanding of Istio and its patterns, harness its power in your production services architecture.
In a cloud native world enamored of Microservices and Serverless, meet Quarkus - Java’s brilliant response to technologies like Node.js, Python and Go that had until recently proven quicker, smaller and arguably more nimble. But we know seeing is believing - we’ll show you Quarkus in action. Get ready to experience “Supersonic, Subatomic Java” - and make Open Source frameworks like Hibernate and Apache Camel faster, smaller and more dynamically scalable than ever before.
About the speaker: Alex Soto is a Software Engineer at Red Hat in Developers group, the creator of NoSQLUnit project, member of JSR374 (Java API for JSON Processing) Expert Group. A Java Champion since 2017 and international speaker.
Zero Downtime Deployment in Microservices eraAlex Soto
You joined the DevOps movement and want to release software even faster and safer. You started reading about Advanced deployment techniques like Blue-Green Deployment, Canary Releases or Dark Shadow Technique. But how do you implement them without disrupting your users in production? With Zero Downtime! This is easy with your code, but what about ephemeral and persistent states? Most of the examples out there does not tackle this scenario (which is the most common in real systems). Come to this session and you’ll learn in a practical way how you can achieve zero downtime deployments applying advanced deployment techniques for maintaining the ephemeral and persistent state of your microservice application.
Sail in the cloud - An intro to Istio commitAlex Soto
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced. Does your organization wish to achieve unicorn like speed? With N deploys per day? Or a lead time (time to business value from idea to production) measured in days/weeks instead of months/years? In this session, we will not only describe how to use Istio and Kubernetes but actively demonstrate 3 specific techniques that you can use immediately following the session.
Currently, Istio is gaining a lot of traction as service-mesh implementation for Kubernetes. In this session, we are going to explore how to install Istio, and how to use it to release new versions of our services correctly.
KubeBoot - Spring Boot deployment on KubernetesAlex Soto
Have you ever thought how to deploy Cloud Native Java Applications (Spring Boot) on Kubernetes? Kubernetes has now become a de-facto standard for deploying Cloud Native Applications, but still, there is the myth that they are not ready for Java workloads. The aim of this session is to break that myth to show Kubernetes is well suited for Cloud Native Java applications. The session explores the cloud native characteristics such as Discovery, Blue/Green Deployments, Elasticity, Canary Deployments, Resiliency, Pipeline(CI/CD), Authentication etc., becomes implicit characteristics to your Spring Boot Java applications that are deployed on Kubernetes In this session, we will see how to build, debug, deploy and discover Spring Boot applications on Kubernetes, covering in-depth details of the tools, libraries, and platform that could be used to make your spring boot deployment smooth and easy.
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced. Does your organization wish to achieve unicorn like speed? With N deploys per day? Or a lead time (time to business value from idea to production) measured in days/weeks instead of months/years? In this session, we will not only describe how to use Istio and Kubernetes but actively demonstrate 3 specific techniques that you can use immediately following the session.
Currently, Istio is gaining a lot of traction as service-mesh implementation for Kubernetes. In this session, we are going to explore how to install Istio, and how to deploy and release resilient, tested, fault-tolerant cloud-native services.
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced.
Come to this session to learn about service virtualization, contract testing or testing in production to increase deployment velocity from 1 week to N times per day or deploy each service independently without worrying about breaking the compatibility between services anymore.
There's been a lot of movement in the Java EE world. From the release of its 8th edition to the shift to Eclipse Foundation and recent rebranding to Jakarta EE. At the same time Eclipse MicroProfile shown up on the EE scene with the primary goal of evolving the spec towards microservice architectures.
With all these changes happening rapidly what has happened to Arquillian, the de-facto testing tool for Java EE applications?
Come to this session, you are going to explore the new and noteworthy of the Arquillian constellation. How standard Arquillian tests has been simplified as well as how microservice architecture has impacted on Arquillian offering integrations for polyglot persistence tests, contract testing or deployment tests for Docker, Kubernetes, and Openshift.
You'll learn that Arquillian is not only for Java EE.
One of the most important benefits of automated testing is to ensure a fast and safe code refactoring to evolve our system architecture. The main problem is how to write tests that are easy to write, easy to follow and not time consuming during development nor execution time. In this session, we are going to explore some powerful Java testing libraries that will help you write better (unit) tests focusing on the main Unicorns architecture challenges such as validating microservices endpoints, remote calls to other microservices or just asynchronous/reactive code.
Nowadays everyone is talking about microservices and how cool they are. That's true, but not all business needs to move to microservices, you can still use monolith architecture and make it more fashion by applying some of the design/elements that you've learned from microservices architecture. Can you use circuit breaker pattern, service isolation, event-driven and non-blocking application, cloud-native approach or zero downtime deployment in monolith architecture? Is it worth? The answer is YES!!!. Come to this session to learn how to make your Java monolith applications attractive again by borrowing some of the principles of microservices architecture.
Microservice architectures have changed how companies develop and deploy applications, and have therefore in turn affected the testing process as well. New techniques have now emerged and others have been enhanced, while old testing techniques (used in monolith) drive us to a dead-end when we try to apply them to a microservices architecture.
In this master class, Alex Soto will introduce some testing techniques, such as service virtualization, contract testing and testing in production to increase deployment velocity from 1 week to N times per day and deploy each service independently without worrying about breaking the compatibility between services. He will show you several examples in Java but will also point out resources for other languages as well.
After this theoretical and live code master class, you'll understand how to test microservice architectures and reduce the friction between trying to apply old testing techniques to a new paradigm.
KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETESAlex Soto
Have you ever thought how to deploy Cloud Native Java Applications (Spring Boot) on Kubernetes? Kubernetes has now become a de-facto standard for deploying Cloud Native Applications, but still there is myth that they are not ready for Java workloads. The aim of this session is to break that myth to show Kubernetes is well suited for Cloud Native Java applications.
The session explores the cloud native characteristics such as Discovery, Blue/Green Deployments, Elasticity, Canary Deployments, Resiliency, Pipeline(CI/CD), Authentication etc., becomes implicit characteristics to your Spring Boot Java applications that are deployed on Kubernetes
In this session, we will see how to build, debug, deploy and discover Spring Boot applications on Kubernetes, covering in depth details of the tools, libraries and platform that could be used to make your spring boot deployment smooth and easy.
10 Testing libraries any Java developer should knowAlex Soto
Java language is one of the most successful languages nowadays with more than 20 years of history. This means that a lot of tools libraries has been developed around all this time for production code but also for testing code.
Come to this session to learn 10 testing libraries that can have a really positive impact on how to write tests, but more importantly, also how to make them more readable.
With traditional software unit tests, there's never a guarantee that an application will actually function correctly in the production environment. And when you add microservices, remote resources that are accessible over a network, into the mix, testing is more tricky. To make things even harder, microservices typically need to collaborate with additional network-based microservices, making testing even more challenging. Moving to microservices implies a change in the mindset of developers, so will using old testing techniques with new architectures still work?
In this session, you'll learn test strategies that solve the most common issues likely to be encountered when writing tests for a microservices architecture. We will look at how tools such as Arquillian, JUnit, Docker and techniques such as service virtualization, consumer-driven testing and testing in production with Istio can aid in accomplishing this task.
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced.
Come to this session to learn about service virtualization, contract testing, smart testing or testing in production to increase deployment velocity from 1 week to N times per day or deploy each service independently without worrying about breaking the compatibility between services anymore.
“A programmer is an organism capable of converting coffee into code.”
The best excuse for a 5-minute coffee break used to be “my code is compiling,” and these days we have “my tests are running.” It's a huge waste of developer time and continuous integration resources to have such long-running tests. But what’s even more important, it slows down development and deployment velocity, resulting in slower time to market and greater lead times.
Join this session for a smart solution to this problem. We’ll show you how a new Java™ tool can drastically reduce your test execution time, letting you stay in the zone and increasing your personal productivity and velocity. Caveat: You may have to find a different excuse to get coffee.
What monolith can learn from microservices?Alex Soto
Nowadays everyone is talking about microservices and how cool they are. That’s true, but not all business needs to move to microservices, you can still use monolith architecture and make it more fashion by applying some of the design/elements that you’ve learned from microservices architecture.
Can you use circuit breaker pattern, service isolation, event-driven and non-blocking application, cloud-native approach or zero downtime deployment in monolith architecture? Is it worth? The answer is YES!!!.
Come to this session to learn how to make your Java monolith applications attractive again by borrowing some of the principles of microservices architecture.
Istio service mesh & pragmatic microservices architectureAlex Soto
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced. Does your organization wish to achieve unicorn like speed? With N deploys per day? Or a lead time (time to business value from idea to production) measured in days/weeks instead of months/years? In this session, we will not only describe how to use Istio and Kubernetes but actively demonstrate 3 specific techniques that you can use immediately following the session.
Currently, Istio is gaining a lot of traction as service-mesh implementation for Kubernetes. In this session, we are going to explore how to install Istio, and how to use it to release new versions of our services correctly.
Zero Downtime Deployment in Microservices eraAlex Soto
ou joined the DevOps movement and want to release software even faster and safer. You started reading about Advanced deployment techniques like Blue-Green Deployment, Canary Releases or Dark Shadow Technique. But how do you implement them without disrupting your users in production? With Zero Downtime! This is easy with your code, but what about ephemeral and persistent states? Most of the examples out there does not tackle this scenario (which is the most common in real systems). Come to this session and you’ll learn in a practical way how you can achieve zero downtime deployments applying advanced deployment techniques for maintaining the ephemeral and persistent state of your microservice application.
As we start to go toward cloud-native infrastructure and build our applications out of microservices, we must fully face the drawbacks and challenges to doing so. Some of these challenges include how to consistently monitor and collect statistics, tracing, and another telemetry, how to add resiliency in the face of unexpected failure, how to do powerful feature routing (ie feature graduation, tap compare ) and much more like securing your services correctly.
Service mesh, in general, helps developers solve this in a non-invasive way.
In this session, we'll show how you can take advantage of these capabilities and show you some patterns that you can implement easily with a service mesh to make your delivery to production smoothly and without surprises.
We expect most developers haven't adequately solved for these issues, so we'll take it step by step and build up a strong understanding of Istio and its patterns, harness its power in your production services architecture.
In a cloud native world enamored of Microservices and Serverless, meet Quarkus - Java’s brilliant response to technologies like Node.js, Python and Go that had until recently proven quicker, smaller and arguably more nimble. But we know seeing is believing - we’ll show you Quarkus in action. Get ready to experience “Supersonic, Subatomic Java” - and make Open Source frameworks like Hibernate and Apache Camel faster, smaller and more dynamically scalable than ever before.
About the speaker: Alex Soto is a Software Engineer at Red Hat in Developers group, the creator of NoSQLUnit project, member of JSR374 (Java API for JSON Processing) Expert Group. A Java Champion since 2017 and international speaker.
Zero Downtime Deployment in Microservices eraAlex Soto
You joined the DevOps movement and want to release software even faster and safer. You started reading about Advanced deployment techniques like Blue-Green Deployment, Canary Releases or Dark Shadow Technique. But how do you implement them without disrupting your users in production? With Zero Downtime! This is easy with your code, but what about ephemeral and persistent states? Most of the examples out there does not tackle this scenario (which is the most common in real systems). Come to this session and you’ll learn in a practical way how you can achieve zero downtime deployments applying advanced deployment techniques for maintaining the ephemeral and persistent state of your microservice application.
Sail in the cloud - An intro to Istio commitAlex Soto
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced. Does your organization wish to achieve unicorn like speed? With N deploys per day? Or a lead time (time to business value from idea to production) measured in days/weeks instead of months/years? In this session, we will not only describe how to use Istio and Kubernetes but actively demonstrate 3 specific techniques that you can use immediately following the session.
Currently, Istio is gaining a lot of traction as service-mesh implementation for Kubernetes. In this session, we are going to explore how to install Istio, and how to use it to release new versions of our services correctly.
KubeBoot - Spring Boot deployment on KubernetesAlex Soto
Have you ever thought how to deploy Cloud Native Java Applications (Spring Boot) on Kubernetes? Kubernetes has now become a de-facto standard for deploying Cloud Native Applications, but still, there is the myth that they are not ready for Java workloads. The aim of this session is to break that myth to show Kubernetes is well suited for Cloud Native Java applications. The session explores the cloud native characteristics such as Discovery, Blue/Green Deployments, Elasticity, Canary Deployments, Resiliency, Pipeline(CI/CD), Authentication etc., becomes implicit characteristics to your Spring Boot Java applications that are deployed on Kubernetes In this session, we will see how to build, debug, deploy and discover Spring Boot applications on Kubernetes, covering in-depth details of the tools, libraries, and platform that could be used to make your spring boot deployment smooth and easy.
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced. Does your organization wish to achieve unicorn like speed? With N deploys per day? Or a lead time (time to business value from idea to production) measured in days/weeks instead of months/years? In this session, we will not only describe how to use Istio and Kubernetes but actively demonstrate 3 specific techniques that you can use immediately following the session.
Currently, Istio is gaining a lot of traction as service-mesh implementation for Kubernetes. In this session, we are going to explore how to install Istio, and how to deploy and release resilient, tested, fault-tolerant cloud-native services.
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced.
Come to this session to learn about service virtualization, contract testing or testing in production to increase deployment velocity from 1 week to N times per day or deploy each service independently without worrying about breaking the compatibility between services anymore.
There's been a lot of movement in the Java EE world. From the release of its 8th edition to the shift to Eclipse Foundation and recent rebranding to Jakarta EE. At the same time Eclipse MicroProfile shown up on the EE scene with the primary goal of evolving the spec towards microservice architectures.
With all these changes happening rapidly what has happened to Arquillian, the de-facto testing tool for Java EE applications?
Come to this session, you are going to explore the new and noteworthy of the Arquillian constellation. How standard Arquillian tests has been simplified as well as how microservice architecture has impacted on Arquillian offering integrations for polyglot persistence tests, contract testing or deployment tests for Docker, Kubernetes, and Openshift.
You'll learn that Arquillian is not only for Java EE.
One of the most important benefits of automated testing is to ensure a fast and safe code refactoring to evolve our system architecture. The main problem is how to write tests that are easy to write, easy to follow and not time consuming during development nor execution time. In this session, we are going to explore some powerful Java testing libraries that will help you write better (unit) tests focusing on the main Unicorns architecture challenges such as validating microservices endpoints, remote calls to other microservices or just asynchronous/reactive code.
Nowadays everyone is talking about microservices and how cool they are. That's true, but not all business needs to move to microservices, you can still use monolith architecture and make it more fashion by applying some of the design/elements that you've learned from microservices architecture. Can you use circuit breaker pattern, service isolation, event-driven and non-blocking application, cloud-native approach or zero downtime deployment in monolith architecture? Is it worth? The answer is YES!!!. Come to this session to learn how to make your Java monolith applications attractive again by borrowing some of the principles of microservices architecture.
Microservice architectures have changed how companies develop and deploy applications, and have therefore in turn affected the testing process as well. New techniques have now emerged and others have been enhanced, while old testing techniques (used in monolith) drive us to a dead-end when we try to apply them to a microservices architecture.
In this master class, Alex Soto will introduce some testing techniques, such as service virtualization, contract testing and testing in production to increase deployment velocity from 1 week to N times per day and deploy each service independently without worrying about breaking the compatibility between services. He will show you several examples in Java but will also point out resources for other languages as well.
After this theoretical and live code master class, you'll understand how to test microservice architectures and reduce the friction between trying to apply old testing techniques to a new paradigm.
KUBEBOOT - SPRING BOOT DEPLOYMENT ON KUBERNETESAlex Soto
Have you ever thought how to deploy Cloud Native Java Applications (Spring Boot) on Kubernetes? Kubernetes has now become a de-facto standard for deploying Cloud Native Applications, but still there is myth that they are not ready for Java workloads. The aim of this session is to break that myth to show Kubernetes is well suited for Cloud Native Java applications.
The session explores the cloud native characteristics such as Discovery, Blue/Green Deployments, Elasticity, Canary Deployments, Resiliency, Pipeline(CI/CD), Authentication etc., becomes implicit characteristics to your Spring Boot Java applications that are deployed on Kubernetes
In this session, we will see how to build, debug, deploy and discover Spring Boot applications on Kubernetes, covering in depth details of the tools, libraries and platform that could be used to make your spring boot deployment smooth and easy.
10 Testing libraries any Java developer should knowAlex Soto
Java language is one of the most successful languages nowadays with more than 20 years of history. This means that a lot of tools libraries has been developed around all this time for production code but also for testing code.
Come to this session to learn 10 testing libraries that can have a really positive impact on how to write tests, but more importantly, also how to make them more readable.
With traditional software unit tests, there's never a guarantee that an application will actually function correctly in the production environment. And when you add microservices, remote resources that are accessible over a network, into the mix, testing is more tricky. To make things even harder, microservices typically need to collaborate with additional network-based microservices, making testing even more challenging. Moving to microservices implies a change in the mindset of developers, so will using old testing techniques with new architectures still work?
In this session, you'll learn test strategies that solve the most common issues likely to be encountered when writing tests for a microservices architecture. We will look at how tools such as Arquillian, JUnit, Docker and techniques such as service virtualization, consumer-driven testing and testing in production with Istio can aid in accomplishing this task.
Microservices architecture has changed how companies develop and deploy applications. This change has affected testing process as well. New techniques have emerged and others have been enhanced.
Come to this session to learn about service virtualization, contract testing, smart testing or testing in production to increase deployment velocity from 1 week to N times per day or deploy each service independently without worrying about breaking the compatibility between services anymore.
“A programmer is an organism capable of converting coffee into code.”
The best excuse for a 5-minute coffee break used to be “my code is compiling,” and these days we have “my tests are running.” It's a huge waste of developer time and continuous integration resources to have such long-running tests. But what’s even more important, it slows down development and deployment velocity, resulting in slower time to market and greater lead times.
Join this session for a smart solution to this problem. We’ll show you how a new Java™ tool can drastically reduce your test execution time, letting you stay in the zone and increasing your personal productivity and velocity. Caveat: You may have to find a different excuse to get coffee.
What monolith can learn from microservices?Alex Soto
Nowadays everyone is talking about microservices and how cool they are. That’s true, but not all business needs to move to microservices, you can still use monolith architecture and make it more fashion by applying some of the design/elements that you’ve learned from microservices architecture.
Can you use circuit breaker pattern, service isolation, event-driven and non-blocking application, cloud-native approach or zero downtime deployment in monolith architecture? Is it worth? The answer is YES!!!.
Come to this session to learn how to make your Java monolith applications attractive again by borrowing some of the principles of microservices architecture.