What is stubbing? What is verifying? Do we need both? If we look into the java docs for Mockito.when() (stubbing) and Mockito.verify() (verifying behavior) we see something strange that is common to both: Although it is possible to verify a stubbed invocation, usually it's just redundant. Well, we known that the difference between stubs and… Continue reading Are you verifying your stubs?
What has changed? Is it still backwards compatible? Is it hard to migrate? These are some of the questions I want to answer with this post. Junit 5 is a bundle of 3 modules: platform, a platform for developing testing frameworks jupiter, the new programming model and extension model vintage, for running Junit 3 and… Continue reading Junit 5
Microservices are hard. Complexity is high. Securing microservices is even harder and even more complex. Where do we start? The first words that come to my mind are authentication and authorization. Firewall. Trust. Session. Tokens. We need to secure our applications and we need to secure our containers. Securing applications We can build a SSO… Continue reading Securing microservices
I saw this by mistake(surely this is not new for some of you). I was looking in some repo, I think it was spring-data-rest or something similar and I was like: What the hell is this? You don't need to write getters and setters for your class members! Suddenly it's enough to have @Getter @Setter… Continue reading Project Lombok
In a microservice environment it's hard to trace errors and logs, as we have lots of moving components. We could go into each service and read the logs, then aggregate them and finally with lots of patience try to understand what is happening. But we should not do this, we have alternatives. One of them… Continue reading Log tracing with Sleuth and Zipkin
In the last articles we have introduced an custom gateway in order to hide services and to load balance requests among others. Now the guys at netflix implemented this pattern and created Zuul. Personally, it reminds me of Apache Server. Zuul core consists of filters, which you can use to intercept the request and response… Continue reading Zuul – Edge Server
Microservices should respect the CAP theorem. That means when a failure occurs, you should choose between consistency and availability, and availability is the best choice. Hystrix has the role to keep the availability high when a partition occurs, by stopping cascading failures and providing fallback. These partitions should not be visible to the end user,… Continue reading Hystrix