Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What about situations where two different clients both begin to publish new events from the same starting point? Those events can't be absolutely ordered right? If you're thinking of Lamport-style happens-before relations, then you can't enforce total ordering of those events. Do you just arbitrarily mark one of those client event streams as failed and force the client to absorb new state and try again?


is there any reading around this - i just am not sure compsci papers cover this?


They do, you're looking for reading around distributed systems topics. Lamport timestamps, a type of logical timestamp, are explained on Wikipedia [1]. You can use these to implement Vector Clocks [2]. I personally learned this by reading papers in undergrad and grad school as I researched in distributed systems, but I hear good things about Steen and Tanenbaum's Distributed Systems [3].

[1]: https://en.wikipedia.org/wiki/Lamport_timestamp

[2]: https://en.wikipedia.org/wiki/Vector_clock

[3]: https://www.distributed-systems.net/index.php/books/ds3/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: