Go to content
Code cloud

Solution architecture

How to build a dynamic IT landscape with microservice architecture

Do you close the business with the architecture?

With an evolutionary approach to IT architecture, you can gradually integrate new systems. Whether it's systems in need of replacement due to obsolescence, or new systems required as the requirements of your setup change. It could be, for example, that the need for a PIM (Product Information Management) system arises as your ecommerce business matures.

How often do you commission new code in the form of products, features or systems in your IT setup?

Once a year? Once a month? Or once an hour? If you don't know, you can probably imagine that there is a difference between putting in a year's work at once - or doing it continuously, maybe even several times an hour. Both in relation to potential errors and accompanying troubleshooting, and in relation to waiting time for development. There is no doubt that most companies prefer continuous progress and early iterations that can be quality tested and business tested against users early in the process.

What are microservices?

Microservices are small standalone pieces of software, with one goal of executing code. Contrary to a software monolith, the execution of processes is broken up into small independent pieces of software, each of which has full autonomy over its own process and a clear delineation of the purpose of the specific process.

Benefits of microservice architecture

  • a logic map and a pen icon

    Best practice software - regardless of technology

    Microservices allow technology diversity and the use of best practice software - regardless of technology.

  • a raising chart icon

    Replace systems continuously

    Build your architecture to be able to replace systems continuously and at different speeds.

  • a magnifying glass diving into three sections icon

    Robustness – one mistake does not cause everything to fail

    Through clearly defined interfaces, a fault can be separated from the other services.

  • paper airplane icon

    Performance optimisation and scalability

    Contrary to a software monolith, microservices' performance can be optimised right down to the individual service.

  • a file with a speed watch icon

    Time to market

    Fast commissioning of new code and new features. With microservices, you can deploy the individual service independently.

  • people connections icon

    Greater efficiency

    With microservices, you can naturally split responsibilities between teams, so that smaller teams can individually solve tasks from development to deployment.

Selected companies we have helped with transition processes / digital road maps for solution architecture

How do you phase out legacy software with microservices?

There are several variations of the method below, but to keep the explanation simple, let's stick to the general principle of replacing a service or piece of software.

1

1 | Build a facade

The first step in the strangler fig method is to build a facade that can receive and route calls to services behind the facade. Most calls will initially go to the monolith, which will then handle the call. By establishing a facade instead of simply calling the service directly, there can be two or more parallel services that can accept calls. The software monolith is now the "host" around which you can begin to establish a strangler fig architecture, to stick to the symbolism.

2

2 | Redirect calls to the new microservice

Once you have ensured that the service solves a defined task in the monolith satisfactorily, you can redirect relevant calls in the facade from the legacy software and divert production calls to the new service instead.

3

3 | Continue to establish self-contained microservices

And so you continue. One process at a time, which you move out of your legacy software and establish as an independent microservice.