During the talk problems of synchronization in the cluster are discussed. Why `synchronized` doesn't work (and why it does)? How to get distributed locking without ZooKeeper? The talk explores implementation options of synchronization primitives based on MongoDB.
Keynote slides (with gifs!): https://www.dropbox.com/s/jw7gmo1fs81oezw/distributed-locking-with-mongodb.key?dl=1