FoundationDB Summit 2018 has ended
View analytic
Monday, December 10 • 2:00pm - 2:20pm
Avoiding Conflicts in Highly-Concurrent Applications - Alec Grieser, Apple

Sign up or log in to save this to your schedule and see who's attending!

Feedback form is now closed.
This is intended to be a somewhat quick how-to on how to build useful primitives using FoundationDB features to help avoid conflicts in highly-concurrent systems. In particular, thinking about minimizing contention and not running into correctness issues related to multiple workers going at once. This will be demonstrated by explaining the design of a few simple patterns that are often useful within larger applications. This could include implementing (or avoiding) an auto-incrementing primary key replacement, including the naïve approach, an approach using a max_index, and an approach using versionstamps. Another application might be a high-contention queue (like our high-contention queue layer), where applications must be able to both append to the end of a growing thing as well as allow for multiple readers to pop from the beginning. Another might be something like a semaphore where you might have multiple requests at once attempting to take or release locks and doing that in an efficient way might be important. (In principle, this could be shortened to one example to meet the 20 minute time limit.)

avatar for Alec Grieser

Alec Grieser

Software Engineer, Apple
Alec is a developer at Apple working on the FoundationDB team. He primarily focuses on layers and bindings development with particular focus on a record-oriented data store that sits on top of the FoundationDB key-value store.

Monday December 10, 2018 2:00pm - 2:20pm
3AB, Washington State Convention Center

Attendees (12)