~/talk

Lessons from 4 Years of writing the driver for MongoDB

Talkat JSConf EU 2013 · 2013-09-14..09-15· [databases, nodejs]
slides:none on file

Four years of driver work reduces to concrete lessons: a JavaScript BSON parser proves the hotspot so a C++ parser gets written and speeds parsing but creates maintenance pain until parsing stays native while types revert to JS objects; 64-bit ints use the Google long closure library; node Mongo usage jumps 20,000 to 200,000 npm installs per month; slab-allocate buffers beat many small allocations; connection buffering trades latency for durability and invites disk-offload ideas; add a toBSON hook, run tests in a version grid, and build reverse code coverage.

AI-written summary · about

  1. 0:00Intro
  2. 2:32First Commit
  3. 3:20IT was crap
  4. 3:52Node was liquid
  5. 4:38Types Oh Types
  6. 5:43Features
  7. 7:51Making JS BSON faster Buffers
  8. 9:58Pool handling
  9. 10:14Write concerns
  10. 11:01Reconnecting
  11. 12:01Custom Serialization off Object to BSON
  12. 12:51Replicaset
  13. 15:41Windows Build Hell
  14. 17:46Regrets
  15. 17:56Should have
  16. 19:36Testing it ALL
  17. 19:503D Reality hits
  18. 20:18A New Beginning
  19. 22:47Documentation
  20. 24:28On Backwards Compatibility
  21. 25:30On Managing The Project
  22. 27:43Take aways
  23. 28:18In Conclusion
~/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.