~/talk

Ordering the chaos - cleaning logs and ordering events in microservices

Talkat NDC Sydney 2020 · 2020-08-31..09-03· [microservices, observability]
slides:none on file

Timestamps are unreliable across microservices because clocks drift, DST and tzdb changes and even leap seconds (2012 caused MySQL CPU spikes). The practical fix is sending a Lamport timestamps integer with each message plus a stable correlation id header (HTTP, queue metadata) and updating time with max+1 via interlocked ops; examples use .NET, tz/CLDR, NTP. For stronger ordering use vector clocks or a Google-style TrueTime 7ms bound when available.

AI-written summary · about

  1. 0:00Intro
  2. 0:42About me
  3. 6:40What is timezone
  4. 9:08Timezones change
  5. 10:40Daylight Saving Time
  6. 12:52Leap second
  7. 14:03How is time distributed
  8. 26:42Network Time Protocol (NTP)
  9. 28:08Other approaches
  10. 30:35Lamport timestamp
  11. 36:47Implementation
  12. 40:47Logger
  13. 42:52Step 1
  14. 43:36Step 2
  15. 44:25Step 3
  16. 45:17Step 4
  17. 49:48Vector clock
  18. 52:53Byzantine generals
  19. 55:02Consensus problem
  20. 56:16Raft
  21. 59:22References
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.