Articles tagged with
microservices
12 Apr 2024
In early 2024, I hit ten years at Allegro, which also happens to be how long I’ve been working with microservices.
This timespan also roughly corresponds to how long the company as a whole has been using them, so I think it’s a good time to outline the story of project
Rubicon: a very ambitious gamble which completely changed how we work and what our software is like. The idea probably seemed rather extreme at the time, yet I
am certain that without this change, Allegro would not be where it is today, or perhaps would not be there at all.
10 Nov 2022
Building a complex web platform can be a real challenge, especially when parts of it are delivered by independent teams.
Picking out the correct architecture is crucial, but maintaining it can be even more challenging.
Frontend microservices, aka microfrontends, is an architecture that gives a lot of flexibility, but can cause
performance issues in the future, if not managed well. This article presents an approach to the microfrontends
architecture to keep the frontend technology stack efficient based on the complexity of user interface.
09 Nov 2021
Every e-commerce platform needs some kind of central authorization system. At Allegro we use
OAuth and have our own implementation that stays true to the
RFC. Allegro has millions of users. There are also a lot of requests
that go through OAuth services. At some point there comes a need to have better control over how much traffic we want to
allow in a certain time window, while maintaining full performance of the platform. Here is where the idea of
rate-limiting comes in handy.
07 May 2020
This year Allegro.pl turns 21. The company, while serving millions of Poles in their
online shopping, has taken part in many technological advances. Breaking the monolith,
utilising public cloud offerings, machine learning, you name it. Even though many technologies
we use might seem as just following the hype, their adoption is backed by solid reasoning.
Let me tell you the story of a project I’ve had the privilege of working on.
12 Mar 2020
You may not know this, but there is a part of Allegro codebase which we started developing in C# due to some special
requirements. This implies new programming opportunities and challenges — one of these is creating a completely new
.NET Core starter project. Let’s explore one potential solution: dotnet new templates.
15 Jul 2019
Reactive programming has been a hot topic on many conference talks for at least several months.
It’s effortless to find simple code examples and tutorials and to apply them to greenfield projects.
Things become a little bit more complicated when production services with millions of users
and thousands of requests per second need to be migrated from existing solutions.
In this article, I would like to discuss migration strategy from
Spring Web MVC to
Spring WebFlux
by the example of one of the Allegro microservices.
I’m going to show some common pitfalls as well as how performance metrics in production were affected by migration.
01 Apr 2019
This post was published on April 1st, 2019, and should not be taken too seriously.
12 Mar 2016
Microservices
are now the mainstream approach for scalable systems architecture.
There is little controversy when we are talking about designing backend services.
Well-behaved backend microservice should cover one
BoundedContext
and communicate over the REST API.
Things get complicated when we need to
use microservices as building blocks for a frontend solution.
How to build a consistent website or a mobile app
using tens or sometimes hundreds of microservices?
19 Dec 2014
In distributed environments it is crucial to have a common, standardized language which services can use to exchange
information between each other. At Allegro, to meet this goal, we’ve chosen the REST architecture.