Founder & CEO, CTO of Spectral, acq. by Check Point | ๐พ Hacker | ๐ดโโ ๏ธ Reverser | ๐พ Open Source | #Rust ๐ฆ #Hacking #Startups | Opinions my own.
Aug 22 โข 5 tweets โข 2 min read
First rule of microservices should be to avoid microservices.
๐งตโฌ๏ธโฌ๏ธ
Because spreading a what mostly is a coherent, mostly linear workflow that is virtually the majority of workflows in business over many machines for the sake of โperformanceโ is just calling for trouble.
Do your capacity planning better. Choose better languages and benchmark your unknowns.
Only after youโve done all that, cut a microservice out. At this point you will have a very good reason to do so and a few years have passed for every single lesson youโll need while refactoring your code.
For the last 15 years, I regularly code-read interesting projects and write my own notes about code & arch as I go. This time I'm reading @prisma's codebase.
In one word: clever.
Rarely I come across codebases that tick all the boxes and take all the right trade-offs.
with my commercial projects, I usually find "unfair" advantages; eat the cake and have it too.
* Userland API in a malleable programming language and infrastructure code in Rust, you pay no overhead.
* The extremely right tool for the job
* "Payment" with good interop