© 2020 Strange Loop
As application complexity increases, external facing requests break down into an ever increasing numbers of internal API requests. As a result, the user facing response time tends to be dominated by the long tail response time of internal API calls. This has caused an attention shift from peak throughput and average latency towards beating down long tail response time, which is frequently the dominant metric when determining usable throughput and provisioning capacity.
Expectations for in-memory databases are no exception. Five 9s under 5 milliseconds under all operational conditions was Mr. Weisberg’s goal for 2014.
This talk is a case study on how he reduced long tail latency in an in-memory Java and C++ distributed ACID datastore. The session will cover the continuous integration infrastructure used to detect and diagnose performance issues on an ongoing basis using tools like Oracle Flight Recorder, Jenkins, Graphite, and HdrHistogram.
Ariel Weisberg will explain what factors affect GC pause times for various kinds of GCs and how you can structure your application to avoid them using off heap storage with Unsafe, file backed memory, JNI, managing object lifetime, and using an alternative runtime (Zing). He will also address buffered IO and writeback in Linux and various gotchas around getting consistent throughput and latency when asynchronously writing/reading to disk with multiple consumers and producers with different priorities.
Ariel Weisberg is a shared-nothing database expert and lead architect for VoltDB, the in-memory NewSQL database company founded by Mike Stonebraker. Ariel has a passion for designing and building highly available, highly scalable software systems, where fractions of a second count. Ariel is fond of saying "Milliseconds are so last year, we are counting microseconds now." He most recently led VoltDB's 4.0 product release, architecting ACID-based elastic scalability for VoltDB's flagship NewSQL database. Ariel has led workshops at past events including Linux Database Camp, PAX Dev, OpenSQL camp Boston, NYC MySQL Meetup, and Boston New Technology Group meetup.