-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
New article "On the current trend away from microservices..."
- Loading branch information
Micah Rairdon
committed
Nov 15, 2022
1 parent
5dec222
commit c4603c1
Showing
2 changed files
with
54 additions
and
0 deletions.
There are no files selected for viewing
54 changes: 54 additions & 0 deletions
54
_posts/2022-11-14-On-the-current-trend-away-from-microservices.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
--- | ||
published: true | ||
layout: post | ||
title: 'On the current trend away from Microservices...' | ||
description: Microservices vs. Monolith... and other industry trends. Should you follow the trend? | ||
modified: {} | ||
tags: | ||
- Software Architecture | ||
categories: | ||
- Software Architecture | ||
--- | ||
|
||
<figure> | ||
<img src="{{ site.url }}/images/hacker-news-build-the-modular-monolith.png"> | ||
<figcaption>Top trending article on Hacker News of <a href="https://news.ycombinator.com/item?id=33585104">Build the modular monolith first</a></figcaption> | ||
</figure> | ||
|
||
Over the past several months, you seldom go a few weeks without seeing a top HackerNews article pulling us back towards building monoliths instead of building with microservices. Reading the comments, it's clear people are frustrated with their microservices architecture. | ||
|
||
Possible reasons for their frustration: | ||
|
||
* Microservices are complex | ||
* They chose microservices architecture when they didn't need to and would have benefited from a simpler architecture | ||
* They like to complain (who doesn't like to vent a little?) | ||
|
||
Those reasons aside, this is a reoccurring theme in web development: we tend to all swing from one extreme (microservices for everything!) to another (monoliths for everything!). | ||
|
||
Maybe there is a better way? | ||
|
||
I present to you: | ||
|
||
> Build the appropriate architecture for your business requirements | ||
Sometimes... you should probably build a [majestic monolith](https://m.signalvnoise.com/the-majestic-monolith/). | ||
Sometimes... you should probably develop your system using distributed computing. | ||
|
||
If you're looking for established methodologies for helping elicit requirements from people in the business, I'd recommend: | ||
|
||
- [Software Engineering Institute: Attribute Driven Design](https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=484077) | ||
- [Martin Fowler's Architecture Guide](https://martinfowler.com/architecture/) | ||
- Familiarizing yourself with various architecture patterns and understanding the pros/cons of each | ||
- [Arcitura Patterns](https://patterns.arcitura.com/) | ||
- [Microservices Patterns](https://microservices.io/) | ||
|
||
## Relevant Additional Reading | ||
|
||
I do applaud the general pull away from microservices but I'd recommend the following articles for a bit more varied reading than the one that was cited in Hacker News: | ||
|
||
[Monolith First - Martin Fowler](https://martinfowler.com/bliki/MonolithFirst.html) | ||
[Don't start with a monolith - Stefan Tilkov](https://martinfowler.com/articles/dont-start-monolith.html) | ||
[Microservices and the First Law of Distributed Objects - Martin Fowler](https://martinfowler.com/articles/distributed-objects-microservices.html) | ||
[The False Dichotomy of Monoliths and Microservices - Jimmy Bogard](https://jimmybogard.com/the-false-dichotomy-of-monoliths-and-microservices/) | ||
[Errant Architectures - Martin Fowler](https://www.drdobbs.com/errant-architectures/184414966) | ||
[History of web-focused distributed computing](https://kriha.de/docs/lectures/distributedsystems/services/services.pdf) |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.