RAFT

Notes

Fault Tolerant VMs

Notes While reading a paper, also pay attention to the authors and why they encountered this problem. While replicating, there are 2 options for replication: Sending the input to the replicas Sending the changes to the replicas More often than not, sending the input is more performant and easier to do. VMware hypervisor is a binary translation hypervisor(Another hypervisor type is TRAP) Incase of this paper, not every single state(of the VM) is replicated, but only some key states are recorded and replayed(as the performance tradeoff is too much). ...

RPC, Couroutines

TIL htop C100k problem Timer interrupt(A periodic interrupt that allows the OS to stop the current thread’s execution and schedule a different thread) Coroutine Notes 1-thread and n-thread: Advantages 1 Thread n Threads Memory/Performance Fairness in scheduling No locking Easier to understand and write the code Disadvantages 1 Thread n Threads Stack Ripping Locking Debugging hard Hard on performance Fibre vs Coroutine vs Async: Fibre/Coroutines have their own stacks(benefits like stack trace/shared variables). Async is stackless. Also called as stackless coroutines. Stackless coroutines are implemented in - JS, C#, Rust, C++ 20 Stackfull are implemented in - Golang, C++ ...