The recording of our April 18 webinar, Reactive Spring, is now available!
In this post I want to share a word about an awesome library for integration testing in Java — TestContainers. We’ll provide a little background on why integration testing is so important at ZeroTurnaround and our requirements for integration tests. You will learn how TestContainers helps us at ZeroTurnaround with our own integration testing. You’ll also find a fully-functional example of an integrated test for a Java agent.
In this whitepaper, we describe the performance pipeline, a concept of mapping performance related work and activities towards the stages of a software delivery pipeline. The main idea behind the performance pipeline is to make sure that the development team is aware of the performance of their product throughout the full length of the delivery process. Being aware of the performance of your application and taking steps not to introduce performance regressions is a continuous process. You can ensure reasonable performance at every stage of the delivery pipeline. Test proactively, rather than solve performance problems your users reported to you after the fact.
RxJava is growing in popularity in Android application development. However, it is also very capable for server-side apps. RxJava makes concurrency easier even though a seasoned Java developer would have to re-learn the concepts to become comfortable with the new idioms.
I’m the product owner of XRebel — the profiler for Java web applications that developers can use while they’re actually developing their applications. Recently I had to prepare a demo environment that I could easily share with my team mates. If the demo would have consisted of just a web app, without external dependencies, it would have been easy to share with the team: I’d just throw a WAR up on Dropbox and everybody would be free to do whatever they wanted to do with it. However in my scenario, I had an external dependency on MongoDB which made my demo a little less portable.
Naturally, I thought that Docker might be a good solution for this. The prerequisite though, is that my team members would have to install the Docker Toolbox in order to use the environment. But this is a wise thing to do anyway, isn’t it? Docker is an established container management system, with tons of resources available to learn the basics. We even recently published a Docker commands and best practices cheat sheet from which you can learn everything you need to navigate your way around Docker containers.
Let me sketch this out for you. The application is Petclinic – a web application, with a UI, that uses an embedded H2 database. In some scenarios, Petclinic talks to the Supplements application over HTTP. Supplements uses MongoDB to fetch data as JSON back to the Petclinic app, if requested.
Great news everyone! Today we are announcing the release of XRebel 3.0!
3.0 is here and it is a great new milestone for XRebel. The new version features something very exciting: end-to-end transaction profiling. You can now profile distributed Java applications and microservices with XRebel Agents!