Tag: system design
-
Have you been told “Use plain SQL, its faster than ORM” ?
You might have heard this advice before, Just use SQL; no need for ORMs. At first glance, that sounds elegant. SQL is expressive, close to the metal, and avoids the “magic” of an ORM. But as systems grow, accidental complexity sneaks in, the kind that comes not from business logic, but from all the supporting…
-
Consistent Hashing in Load Balancer
The standard hashing algorithm is inefficient while processing network queries. This traditional technique presupposes that we have a set number of servers and that all mapping locations are known in advance. This scenario is particularly troublesome in distributed systems when several users request multiple servers. If some servers fail, then mapping the work to new…
-
Avoid Cache Pitfalls: Key Problems and Fixes
Caching enhances application performance but can create severe issues if mismanaged. Common problems include the Thundering Herd Problem, Cache Penetration, Cache Breakdown, and Cache Crash, each leading to database overloads. Solutions involve staggered expirations, caching null values, and using cache clustering to maintain system reliability and efficiency.