{"id":2781,"date":"2016-08-26T02:00:26","date_gmt":"2016-08-26T09:00:26","guid":{"rendered":"http:\/\/softwareengineeringdaily.com\/?p=2781"},"modified":"2021-11-05T02:52:17","modified_gmt":"2021-11-05T09:52:17","slug":"ubers-ringpop-with-jeff-wolski","status":"publish","type":"post","link":"https:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/","title":{"rendered":"Uber&#8217;s Ringpop with Jeff Wolski"},"content":{"rendered":"<p><img data-attachment-id=\"2475\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/04\/19\/googles-container-management-brendan-burns\/brendan-burns\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/04\/brendan-burns.jpg?fit=175%2C175&amp;ssl=1\" data-orig-size=\"175,175\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"brendan-burns\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/04\/brendan-burns.jpg?fit=175%2C175&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/04\/brendan-burns.jpg?fit=175%2C175&amp;ssl=1\" decoding=\"async\" loading=\"lazy\" class=\"alignright size-full wp-image-2475\" style=\"border-radius: 50%; border: 1px solid #000000; max-width: 175px; max-height: 175px;\" src=\"https:\/\/i0.wp.com\/qconnewyork.com\/ny2015\/d3az8lowv1iwto.cloudfront.net\/sites\/default\/files\/styles\/img-single-track\/public\/jeff%20wolski-itok=6yU4UH8Y.jpg?resize=175%2C175&#038;ssl=1\" width=\"175\" height=\"175\" data-recalc-dims=\"1\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Uber has a software architecture with unique requirements. Uber does not have the firehose of user engagement data that Twitter or Facebook has, but each transaction on Uber is both high value and time-sensitive. Users are paying for transportation that they expect to be available and reasonably close by. When Uber\u2019s system is trying to match a rider with a driver, <\/span><i><span style=\"font-weight: 400;\">availability<\/span><\/i><span style=\"font-weight: 400;\"> is favored over <\/span><i><span style=\"font-weight: 400;\">consistency<\/span><\/i><span style=\"font-weight: 400;\">. It is important that the rider can always get <\/span><i><span style=\"font-weight: 400;\">some <\/span><\/i><span style=\"font-weight: 400;\">driver, even if it is not the <\/span><i><span style=\"font-weight: 400;\">best<\/span><\/i><span style=\"font-weight: 400;\"> driver.<\/span><br \/>\n<span style=\"font-weight: 400;\">Ringpop is a system built at Uber to provide scalable, fault-tolerant, application layer sharding. Ringpop consists of a membership protocol, consistent hashing, and forwarding capabilities. Jeff Wolski is a software engineer at Uber working in Ringpop, and he joins the show to explain how Ringpop brings coordination to distributed applications.<br \/>\n<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uber has a software architecture with unique requirements. Uber does not have the firehose of user engagement data that Twitter or Facebook has, but each transaction on Uber is both high value and time-sensitive. Users are paying for transportation that they expect to be available and reasonably close by. When Uber\u2019s system is trying to<\/p>\n","protected":false},"author":1,"featured_media":2790,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_newsletter_tier_id":0,"footnotes":"","jetpack_publicize_message":"[podcast] Uber's Ringpop with Jeff Wolski @uber @jwolski @ubereng","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[1363,1079,14],"tags":[88,250,353,40],"jetpack_publicize_connections":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Uber&#039;s Ringpop with Jeff Wolski - Software Engineering Daily<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Uber&#039;s Ringpop with Jeff Wolski - Software Engineering Daily\" \/>\n<meta property=\"og:description\" content=\"Uber has a software architecture with unique requirements. Uber does not have the firehose of user engagement data that Twitter or Facebook has, but each transaction on Uber is both high value and time-sensitive. Users are paying for transportation that they expect to be available and reasonably close by. When Uber\u2019s system is trying to\" \/>\n<meta property=\"og:url\" content=\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/\" \/>\n<meta property=\"og:site_name\" content=\"Software Engineering Daily\" \/>\n<meta property=\"article:published_time\" content=\"2016-08-26T09:00:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-05T09:52:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/08\/jeff-wolski-explorations-in-cooperative-distributed-systems-with-ubers-ringpop-9-638.jpg?fit=638%2C359\" \/>\n\t<meta property=\"og:image:width\" content=\"638\" \/>\n\t<meta property=\"og:image:height\" content=\"359\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jeff\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@software_daily\" \/>\n<meta name=\"twitter:site\" content=\"@software_daily\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeff\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/#article\",\"isPartOf\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/\"},\"author\":{\"name\":\"Jeff\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd\"},\"headline\":\"Uber&#8217;s Ringpop with Jeff Wolski\",\"datePublished\":\"2016-08-26T09:00:26+00:00\",\"dateModified\":\"2021-11-05T09:52:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/\"},\"wordCount\":142,\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"keywords\":[\"Databases\",\"Scalability\",\"Software Architecture\",\"Uber\"],\"articleSection\":[\"All Content\",\"Cloud Engineering\",\"Podcast\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/\",\"url\":\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/\",\"name\":\"Uber's Ringpop with Jeff Wolski - Software Engineering Daily\",\"isPartOf\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\"},\"datePublished\":\"2016-08-26T09:00:26+00:00\",\"dateModified\":\"2021-11-05T09:52:17+00:00\",\"breadcrumb\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/softwareengineeringdaily.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Uber&#8217;s Ringpop with Jeff Wolski\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"name\":\"Software Engineering Daily\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\",\"name\":\"Software Engineering Daily\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1\",\"width\":296,\"height\":139,\"caption\":\"Software Engineering Daily\"},\"image\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/twitter.com\/software_daily\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd\",\"name\":\"Jeff\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg\",\"caption\":\"Jeff\"},\"url\":\"https:\/\/softwareengineeringdaily.com\/author\/jeff\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Uber's Ringpop with Jeff Wolski - Software Engineering Daily","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/","og_locale":"en_US","og_type":"article","og_title":"Uber's Ringpop with Jeff Wolski - Software Engineering Daily","og_description":"Uber has a software architecture with unique requirements. Uber does not have the firehose of user engagement data that Twitter or Facebook has, but each transaction on Uber is both high value and time-sensitive. Users are paying for transportation that they expect to be available and reasonably close by. When Uber\u2019s system is trying to","og_url":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/","og_site_name":"Software Engineering Daily","article_published_time":"2016-08-26T09:00:26+00:00","article_modified_time":"2021-11-05T09:52:17+00:00","og_image":[{"width":638,"height":359,"url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/08\/jeff-wolski-explorations-in-cooperative-distributed-systems-with-ubers-ringpop-9-638.jpg?fit=638%2C359","type":"image\/jpeg"}],"author":"Jeff","twitter_card":"summary_large_image","twitter_creator":"@software_daily","twitter_site":"@software_daily","twitter_misc":{"Written by":"Jeff","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/#article","isPartOf":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/"},"author":{"name":"Jeff","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd"},"headline":"Uber&#8217;s Ringpop with Jeff Wolski","datePublished":"2016-08-26T09:00:26+00:00","dateModified":"2021-11-05T09:52:17+00:00","mainEntityOfPage":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/"},"wordCount":142,"publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"keywords":["Databases","Scalability","Software Architecture","Uber"],"articleSection":["All Content","Cloud Engineering","Podcast"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/","url":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/","name":"Uber's Ringpop with Jeff Wolski - Software Engineering Daily","isPartOf":{"@id":"https:\/\/softwareengineeringdaily.com\/#website"},"datePublished":"2016-08-26T09:00:26+00:00","dateModified":"2021-11-05T09:52:17+00:00","breadcrumb":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/"]}]},{"@type":"BreadcrumbList","@id":"http:\/\/softwareengineeringdaily.com\/2016\/08\/26\/ubers-ringpop-with-jeff-wolski\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/softwareengineeringdaily.com\/"},{"@type":"ListItem","position":2,"name":"Uber&#8217;s Ringpop with Jeff Wolski"}]},{"@type":"WebSite","@id":"https:\/\/softwareengineeringdaily.com\/#website","url":"https:\/\/softwareengineeringdaily.com\/","name":"Software Engineering Daily","description":"","publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/softwareengineeringdaily.com\/#organization","name":"Software Engineering Daily","url":"https:\/\/softwareengineeringdaily.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1","contentUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1","width":296,"height":139,"caption":"Software Engineering Daily"},"image":{"@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/twitter.com\/software_daily"]},{"@type":"Person","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd","name":"Jeff","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg","caption":"Jeff"},"url":"https:\/\/softwareengineeringdaily.com\/author\/jeff\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/08\/jeff-wolski-explorations-in-cooperative-distributed-systems-with-ubers-ringpop-9-638.jpg?fit=638%2C359&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p7GuoD-IR","_links":{"self":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/2781"}],"collection":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/comments?post=2781"}],"version-history":[{"count":0,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/2781\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media\/2790"}],"wp:attachment":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media?parent=2781"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/categories?post=2781"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/tags?post=2781"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}