Designing A Key-Value Store

I’ve been asked once to design a key value store in an interview. It looks easy at first. Then it gets hard, fast.  What makes it interesting is how ambiguous it is. I started using it for interviewing staff+ level myself as well, because the ambiguity is really hard to get right. I like this question because you can approach […]

Simple Mutual Exclusion

When we design services for high availability, we often deploy more than one instance of the same application. It might be two servers behind a load balancer or a few nodes sharing the same workload. This setup is great for redundancy and performance, but it introduces a simple question: how can we make sure that only one instance executes a […]

Ufak Servisler

Ufak servisler(micro services) son zamanlarda yazılım alanında sıkça yaygınlaşan bir yöntem. Micro‘yu ufak diye çevirmek hoşuma gitti ama tahminen mikro daha çok kullanılır. Zaten önemli olan servisin küçüklüğünü belirtmek olduğundan uygun olduğunu düşünüyorum. Ufak servis bağımsız ve aralarında iyi tanımlanmış bir konuşma yöntemi olan ufak servislerin belirli bir ihtiyacı karşılamasını öngören mimari şablondur. Aslına bakarsanız varolan sistemlerin bir çoğu altyapılarında servis kullanmaktadır fakat […]