In a microservice architecture, sometimes we want to ensure behaviors across all services, such as: request tracking, logging, header validation, and so on.
To consistently enforce such policies, we shouldn’t throw those responsibilities to all teams responsible for each group of microservices, or each one would develop their solution, and the word “consistency” would boil away.
Focusing the logic above in what’s called Policy Enforcement Point (PEP) is the best decision you can make. …
The capacity to learn is a gift; the ability to learn is a skill; the willingness to learn is a choice. — Brian Herbert
Most rookies, whenever they hear the word API in a conversation or an article, some interesting thoughts may come to their minds, like complexity, unknown, difficulty, etc.
There’s no problem with that, we all must start from somewhere right? …
We all want our applications to be secure, bug-free, and resilient to any type of problems right? This article is all about client resiliency and how to achieve it.
Most software engineers and architects look to apply patterns, mostly related to infrastructure or service failure, and the normal solution we look for is redundancy, wherewith load balancing, for example infrastructure segregation, we try to avoid the big word, failure.
In this article, I will explain to you the main concept of “Circuit Breaker” and how it will help you bulletproof your microservices, and make them resilient to external problems with just a few steps. …
Be the change you wish to see in the world. — Mahatma Gandhi
The search for physical addresses around services within our microservices is a well-known concept since the beginning of distributed computing. It’s a key piece of our architecture since it directly affects our distributed architecture, starting with the following three key reasons:
Inevitably when your application configuration is written directly into the code, every time you need to apply a change, the application must be recompiled or/and redeployed, for the client’s well-being or even for the folk that does that work, avoid it. Most engineers separate the configuration information from the original application source due to the lack of efficiency and flexibility.
Five usual solutions to this problem take place. In this article, I propose one of those solutions, mainly the most straightforward, Spring Cloud Configuration Server.
Looking at the official Spring.io documentation:
Spring Cloud Config provides server-side and client-side support for externalized configuration in a distributed system. With the Config Server, you have a central place to manage external properties for applications across all environments. …
“I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do It“. — Bill Gates
This quote is quite what we, as developers are always looking for — an easy way to achieve what we want — and nothing better than shortcuts with the same outcome.
With these 4 tips, you will find yourself more available to think about the real problem instead of getting stuck on the usual “how to get there” problem.
For those who don’t know what live templates are about, it’s mostly about what autocomplete recommendations our IDE gives us, like the famous ‘sys’ in Eclipse, which gives us the System.out.println …