~/talk

Time-based domain events - how to deal with time

Talkat JDD 2019 · 2019-10-14..10-15· [software-architecture, distributed-systems]
links:none on file
slides:none on file

Design uses Kafka Streams with state stores backed by RocksDB to postpone and replay time-based domain events for ~450,000 employees and ~9,000 leavers/month, with day precision. Implementation stores future events keyed by date, schedules via the Streams processor API, tests with TopologyTestDriver, and forwards effective events to an output topic. It works but exposes caveats: lexicographic range queries cause duplicate forwards and require a cleaner, state stores lack TTL, RocksDB increases memory/disk, and wall-clock scheduling is best-effort.

AI-written summary · about

  1. 0:00Intro
  2. 2:35Employee Experience Expertise
  3. 3:00Rewards And Benefits
  4. 3:22Employee Work Cycle Context
  5. 4:27Case 1 Discount Eligibility
  6. 5:11A niche of Time-based domain events
  7. 6:53Recap • Expiring time frame
  8. 7:29Case 2 Just in time events
  9. 8:41Events for future
  10. 9:46Retroactive event
  11. 9:57ACL Anti-corruption layer
  12. 10:17Event Scheduler
  13. 10:37Events streaming
  14. 10:53Drivers
  15. 13:07Kafka Streams DSL
  16. 14:01PAPI Kafka Streams Processor API
  17. 14:22Processor Context
  18. 14:32Processor Time
  19. 16:03Where put not effective events?
  20. 16:20State Stores
  21. 21:16Scenarios
  22. 23:00Schedule topology with Cleaner
  23. 23:26Are we done?
  24. 23:50The idea
  25. 24:40Reschedule Topology
  26. 26:08What next?
  27. 26:54Final Topology
  28. 27:08Achievements
  29. 28:55Considerations
  30. 31:11Takeaways
  31. 32:52Alternatives
  32. 34:47References
~/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.