Just wrapped up my 1:1 call with one of my cohort-ian and we ended up building an infinitely scalable Distributed Task Scheduler, AWS CloudWatch Events, DKron, and Quartz Scheduler, in under 30 minutes.
When foundations are clear, no system is harder to design 💪
- Infinite task ingestion
- 30 second SLA of execution
- Execution Framework that supports Binaries, Scripts, Remote Executions
- Fault tolerance of Scheduler Nodes
- Repeatability of tasks
- Exactly-once schedule and execution
The design we discussed did not just have random boxes of high-funda components but rather the actual tools and techs that we would be using, along with their pros and limitations. 💪
The best part, while discussing this, we accidentally built our own Message Broker on top of a relational database. Who would have thought 😆
This Sunday, I will be discussing this very problem with my cohort, and this perfectly summarizes the benefit of my System Design Course - you always get something extra ✨
If you want to master System Design and learn it the right way, you should enroll in my upcoming cohort starting September 4th.
We will together build some of the most amazing systems and dissect them to understand the intricate details.
You can find the week-by-week curriculum and topics, benefits, testimonials, and other details
Any write operation happening on the Master is logged in the Replication log file as an event. The format in which these events are logged in the Log file is called Replication Format.
The two common Replication formats:
- Statement-based format
- Row-based format
✨ Statement-based Format
The Master records the operation as an event in its log, and when the Replica reads this log, it executes the same operation on its copy of data.
This way, the operation on the Master is executed on the Replica, which keeps it in sync with the Master.