Member-only story
What is microservices? Explain like I’m 5
The term “microservices architecture” refers to a pattern of design that can be used to organize computer systems into scalable services.
In the 1990s, an internet service provider would run a large, unified program on a server located on the business’s premises. A well-known company would simply deploy more copies of the monolith to manage the increased volume of customer activity. There are some advantages to monolithic architectures. A monolith can help to consolidate a codebase into a single location. Engineers can step through any part of the code while it is being debugged. Furthermore, user requests that are completely serviced by a monolith require fewer network calls, which reduces the likelihood of the request failing. Today, the vast majority of software companies store their source code in a single, massive repository known as a monolith. When these monoliths become substantial, there is the potential for complications.
The presence of centralized code results in couplings that are difficult to disentangle. A typical computer will be incapable of executing a program whose file size is excessively large. Around the turn of the millennium, Internet giants began separating their applications into individual services. Instead of scaling the entire monolithic application, a service-oriented architecture could scale only the application components experiencing load.