This is a list of articles/ blog posts for best practices, system designs etc.
- System Design
- How to deliver messages exactly once on scale
- Scalable task queues
- An Approach to Designing a Distributed, Fault-Tolerant, Horizontally Scalable Event Scheduler
- Scalable task scheduler
- How to count unique in billions of keys with very less memory print
- Scaling websockets
- Builing a highest Query per Second GeoSearch Service
- Best Practices
This article explains how to deliver billions of messages exactly once. On high level, in order to achieve exactly once guarantee, the messages are not consumed directly from the message cluster to which they are produced instead a middle de-duplication layer is used to consume these messages and this layer publishes messages which are not duplicate to another cluster which are later consumed.
More detail is available here
This article explains a scalable architecture for task queues. A kafka cluster in front of a redis cluster is used to provide write safety.
More detail is available here
This article explains an approach for a scalable event scheduler using a home-grown application on top of cassandra.
More detail is available here
These articles explains a fault tolerant and highly scalable design for a task scheduler using kafka, cassandra and akka.
This article explains the approach of counting unique keys with a very less error using very small memory.
More details is available here
In this article, an approach for horizontally scaling websockets is discussed.
More details here
This article explains an approach to develop a highly scalable gea-fencing service.
More details here
Often, we need to build projects which require a specialized environment to build. Reproducing the build environment becomes a tedious job over time. One of the better approach is to use docker container to build the projects. This article explains how to use docker container to build a project.