SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
How we run Redis in multiple datacenters
Moe Chaieb, Shopify
Shopify is the leading omni-channel commerce platform.
Merchants use Shopify to design, set up, and manage
their stores across multiple sales channels, including
mobile, web, social media, marketplaces, brick-and-
mortar locations, and pop-up shops.
• One of the oldest and largest Ruby on Rails monoliths
• 1000+ developers
• 50 deploys per day
• 80K peak RPS
• 2.5 million LOC
• 100 000 unit tests
• 1.6 billion background jobs processed per day
• Why Redis?
• Architecture Overview
• Multi-tenancy
• Multi-DC
• Resque
• Resiliency
• Persistence
• Failovers
Outline
Why Redis?
Shopify Multi-tenancy
Shopify Multi-DC
Workers: web
fashionstore.ca
shop_id: 87235
pod_id: A
location: east
controller: checkout
action: create
Workers: job
• Ability to be resilient at the
system level, not just at the
component level
• Expect single components 

to fail routinely
• Especially true in cloud
environments
• server pre-emption is out of
your hands
• expect processes to be
restarted routinely
• graceful termination, 

fallbacks are key
Platform Resiliency
• Depends on the level of
data criticality
• Jobs are critical
• Shopping carts are not
• SIGKILLs are still
dangerous
• still potential for some
data loss (up to 1
second)
Redis Persistence
• Useful for:
• Incident response
• Load balancing
• Need to be fast
• Need to be safe
• Manually trigger (for now)
Shopify Pod Failovers
Failover Orchestration
Failover Steps
Shopify Redis “Failover”: TransferJobs
• Write throughput is high
• stress on tunnels
• cross-DC traffic $$$
• Writes are shortly no-oped
• A bit more complex than 

what we need
Redis Replication & Resque
• Bugs can result in data loss
• Delays can result 

in missed SLOs
• Race conditions 

with job workers
TransferJobs issues
• Sharding is helpful (in
write-heavy applications)
• No silver-bullet solution for
multi-DC, active/passive
architectures
• Keep it simple
• know when to build it
yourself
• …and when to defer to
Redis
Closing remarks
Thank you!

Weitere ähnliche Inhalte

Was ist angesagt?

SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020
SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020
SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020Redis Labs
 
RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...
RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...
RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...Redis Labs
 
MySQL 和 InnoDB 性能
MySQL 和 InnoDB 性能MySQL 和 InnoDB 性能
MySQL 和 InnoDB 性能YUCHENG HU
 
Accelerate Business Agility with PaaS
Accelerate Business Agility with PaaS Accelerate Business Agility with PaaS
Accelerate Business Agility with PaaS WSO2
 
Instaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to CassandraInstaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to CassandraDataStax Academy
 
RedisConf18 - Designing a Redis Client for Humans
RedisConf18 - Designing a Redis Client for Humans RedisConf18 - Designing a Redis Client for Humans
RedisConf18 - Designing a Redis Client for Humans Redis Labs
 
WSO2 Advantage Webinar WSO2 BAM2 Integration with mule esb
WSO2 Advantage Webinar  WSO2 BAM2 Integration with mule esbWSO2 Advantage Webinar  WSO2 BAM2 Integration with mule esb
WSO2 Advantage Webinar WSO2 BAM2 Integration with mule esbWSO2
 
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020Redis Labs
 
RedisConf18 - Video Experience Operational Insights in Real Time.
RedisConf18 - Video Experience Operational Insights in Real Time.RedisConf18 - Video Experience Operational Insights in Real Time.
RedisConf18 - Video Experience Operational Insights in Real Time.Redis Labs
 
Betfair + Couchbase
Betfair + CouchbaseBetfair + Couchbase
Betfair + Couchbasebloodredsun
 
Cassandra summit 2015 - Simplifying Streaming Analytics
Cassandra summit 2015 - Simplifying Streaming AnalyticsCassandra summit 2015 - Simplifying Streaming Analytics
Cassandra summit 2015 - Simplifying Streaming AnalyticsBrenden Matthews
 
Application Development with Apache Cassandra as a Service
Application Development with Apache Cassandra as a ServiceApplication Development with Apache Cassandra as a Service
Application Development with Apache Cassandra as a ServiceWSO2
 
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...NetApp
 
Big data talk barcelona - jsr - jc
Big data talk   barcelona - jsr - jcBig data talk   barcelona - jsr - jc
Big data talk barcelona - jsr - jcJames Saint-Rossy
 
Software defined storage real or bs-2014
Software defined storage real or bs-2014Software defined storage real or bs-2014
Software defined storage real or bs-2014Howard Marks
 
Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Howard Marks
 
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...Redis Labs
 
Coursera's Adoption of Cassandra
Coursera's Adoption of CassandraCoursera's Adoption of Cassandra
Coursera's Adoption of CassandraDataStax Academy
 

Was ist angesagt? (20)

SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020
SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020
SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020
 
RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...
RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...
RedisConf18 - Redis Cluster Provisioning with Kubernetes Service-Catalog Exte...
 
MySQL 和 InnoDB 性能
MySQL 和 InnoDB 性能MySQL 和 InnoDB 性能
MySQL 和 InnoDB 性能
 
Accelerate Business Agility with PaaS
Accelerate Business Agility with PaaS Accelerate Business Agility with PaaS
Accelerate Business Agility with PaaS
 
Instaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to CassandraInstaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to Cassandra
 
RedisConf18 - Designing a Redis Client for Humans
RedisConf18 - Designing a Redis Client for Humans RedisConf18 - Designing a Redis Client for Humans
RedisConf18 - Designing a Redis Client for Humans
 
WSO2 Advantage Webinar WSO2 BAM2 Integration with mule esb
WSO2 Advantage Webinar  WSO2 BAM2 Integration with mule esbWSO2 Advantage Webinar  WSO2 BAM2 Integration with mule esb
WSO2 Advantage Webinar WSO2 BAM2 Integration with mule esb
 
Serverless
ServerlessServerless
Serverless
 
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020
 
RedisConf18 - Video Experience Operational Insights in Real Time.
RedisConf18 - Video Experience Operational Insights in Real Time.RedisConf18 - Video Experience Operational Insights in Real Time.
RedisConf18 - Video Experience Operational Insights in Real Time.
 
Betfair + Couchbase
Betfair + CouchbaseBetfair + Couchbase
Betfair + Couchbase
 
Cassandra summit 2015 - Simplifying Streaming Analytics
Cassandra summit 2015 - Simplifying Streaming AnalyticsCassandra summit 2015 - Simplifying Streaming Analytics
Cassandra summit 2015 - Simplifying Streaming Analytics
 
Application Development with Apache Cassandra as a Service
Application Development with Apache Cassandra as a ServiceApplication Development with Apache Cassandra as a Service
Application Development with Apache Cassandra as a Service
 
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
 
Big data talk barcelona - jsr - jc
Big data talk   barcelona - jsr - jcBig data talk   barcelona - jsr - jc
Big data talk barcelona - jsr - jc
 
Software defined storage real or bs-2014
Software defined storage real or bs-2014Software defined storage real or bs-2014
Software defined storage real or bs-2014
 
Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)
 
Redis in 20 minutes
Redis in 20 minutesRedis in 20 minutes
Redis in 20 minutes
 
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...
 
Coursera's Adoption of Cassandra
Coursera's Adoption of CassandraCoursera's Adoption of Cassandra
Coursera's Adoption of Cassandra
 

Ähnlich wie RedisDay London 2018 - How We Run Redis in Multiple Datacenters

How Shopify Is Scaling Up Its Redis Message Queues
How Shopify Is Scaling Up Its Redis Message QueuesHow Shopify Is Scaling Up Its Redis Message Queues
How Shopify Is Scaling Up Its Redis Message QueuesRedis Labs
 
Getting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague GriffithGetting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague GriffithDatabricks
 
Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...
Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...
Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...Redis Labs
 
Why Use Ruby on Rails for E-Commerce Project: Proven Case Study
Why Use Ruby on Rails for E-Commerce Project: Proven Case StudyWhy Use Ruby on Rails for E-Commerce Project: Proven Case Study
Why Use Ruby on Rails for E-Commerce Project: Proven Case StudyKaty Slemon
 
Using Redis As Your Online Feature Store: 2021 Highlights. 2022 Directions
Using Redis As Your  Online Feature Store:  2021 Highlights. 2022 DirectionsUsing Redis As Your  Online Feature Store:  2021 Highlights. 2022 Directions
Using Redis As Your Online Feature Store: 2021 Highlights. 2022 DirectionsGuy Korland
 
apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...
apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...
apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...apidays
 
Learn Effective Middleware Monitoring with Message Monitor Pro
Learn Effective Middleware Monitoring with Message Monitor ProLearn Effective Middleware Monitoring with Message Monitor Pro
Learn Effective Middleware Monitoring with Message Monitor ProRoyal Cyber Inc.
 
Why Use Ruby on Rails for eCommerce Project Proven Case Study.pdf
Why Use Ruby on Rails for eCommerce Project Proven Case Study.pdfWhy Use Ruby on Rails for eCommerce Project Proven Case Study.pdf
Why Use Ruby on Rails for eCommerce Project Proven Case Study.pdfKaty Slemon
 
Architecting extremelylargescalewebapplications
Architecting extremelylargescalewebapplicationsArchitecting extremelylargescalewebapplications
Architecting extremelylargescalewebapplicationsPrashanth Panduranga
 
High scalability of an e-commerce system on the example of Magento
High scalability of an e-commerce system on the example of MagentoHigh scalability of an e-commerce system on the example of Magento
High scalability of an e-commerce system on the example of MagentoDivante
 
Jelastic DevOps Platform Product Overview for Service Providers
Jelastic DevOps Platform Product Overview for Service ProvidersJelastic DevOps Platform Product Overview for Service Providers
Jelastic DevOps Platform Product Overview for Service ProvidersJelastic Multi-Cloud PaaS
 
Introducing Telerik RAD Controls for WP7
Introducing Telerik RAD Controls for WP7Introducing Telerik RAD Controls for WP7
Introducing Telerik RAD Controls for WP7Kunal Chowdhury
 
Going Full Throttle: How to Speed Time to Market on Marketing Campaign Sites
Going Full Throttle: How to Speed Time to Market on Marketing Campaign SitesGoing Full Throttle: How to Speed Time to Market on Marketing Campaign Sites
Going Full Throttle: How to Speed Time to Market on Marketing Campaign SitesAcquia
 

Ähnlich wie RedisDay London 2018 - How We Run Redis in Multiple Datacenters (20)

How Shopify Is Scaling Up Its Redis Message Queues
How Shopify Is Scaling Up Its Redis Message QueuesHow Shopify Is Scaling Up Its Redis Message Queues
How Shopify Is Scaling Up Its Redis Message Queues
 
Scaling PHP web apps
Scaling PHP web appsScaling PHP web apps
Scaling PHP web apps
 
Getting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague GriffithGetting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague Griffith
 
Shopifypresentation
ShopifypresentationShopifypresentation
Shopifypresentation
 
tonyz
tonyztonyz
tonyz
 
Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...
Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...
Redis as a High Scale Swiss Army Knife by Rahul Dagar and Abhishek Gupta of G...
 
Why Use Ruby on Rails for E-Commerce Project: Proven Case Study
Why Use Ruby on Rails for E-Commerce Project: Proven Case StudyWhy Use Ruby on Rails for E-Commerce Project: Proven Case Study
Why Use Ruby on Rails for E-Commerce Project: Proven Case Study
 
Using Redis As Your Online Feature Store: 2021 Highlights. 2022 Directions
Using Redis As Your  Online Feature Store:  2021 Highlights. 2022 DirectionsUsing Redis As Your  Online Feature Store:  2021 Highlights. 2022 Directions
Using Redis As Your Online Feature Store: 2021 Highlights. 2022 Directions
 
apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...
apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...
apidays LIVE LONDON - Reference Architecture as Code (RaaC): A Framework to A...
 
Hybris @ Neev
Hybris @ NeevHybris @ Neev
Hybris @ Neev
 
Learn Effective Middleware Monitoring with Message Monitor Pro
Learn Effective Middleware Monitoring with Message Monitor ProLearn Effective Middleware Monitoring with Message Monitor Pro
Learn Effective Middleware Monitoring with Message Monitor Pro
 
Etggs opensource
Etggs opensourceEtggs opensource
Etggs opensource
 
Why Use Ruby on Rails for eCommerce Project Proven Case Study.pdf
Why Use Ruby on Rails for eCommerce Project Proven Case Study.pdfWhy Use Ruby on Rails for eCommerce Project Proven Case Study.pdf
Why Use Ruby on Rails for eCommerce Project Proven Case Study.pdf
 
Architecting extremelylargescalewebapplications
Architecting extremelylargescalewebapplicationsArchitecting extremelylargescalewebapplications
Architecting extremelylargescalewebapplications
 
About Rackspace
About RackspaceAbout Rackspace
About Rackspace
 
High scalability of an e-commerce system on the example of Magento
High scalability of an e-commerce system on the example of MagentoHigh scalability of an e-commerce system on the example of Magento
High scalability of an e-commerce system on the example of Magento
 
Jelastic DevOps Platform Product Overview for Service Providers
Jelastic DevOps Platform Product Overview for Service ProvidersJelastic DevOps Platform Product Overview for Service Providers
Jelastic DevOps Platform Product Overview for Service Providers
 
Introducing Telerik RAD Controls for WP7
Introducing Telerik RAD Controls for WP7Introducing Telerik RAD Controls for WP7
Introducing Telerik RAD Controls for WP7
 
Ecommerce platform
Ecommerce platformEcommerce platform
Ecommerce platform
 
Going Full Throttle: How to Speed Time to Market on Marketing Campaign Sites
Going Full Throttle: How to Speed Time to Market on Marketing Campaign SitesGoing Full Throttle: How to Speed Time to Market on Marketing Campaign Sites
Going Full Throttle: How to Speed Time to Market on Marketing Campaign Sites
 

Mehr von Redis Labs

Redis Day Bangalore 2020 - Session state caching with redis
Redis Day Bangalore 2020 - Session state caching with redisRedis Day Bangalore 2020 - Session state caching with redis
Redis Day Bangalore 2020 - Session state caching with redisRedis Labs
 
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020Redis Labs
 
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...Redis Labs
 
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...Redis Labs
 
Redis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
Redis for Data Science and Engineering by Dmitry Polyakovsky of OracleRedis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
Redis for Data Science and Engineering by Dmitry Polyakovsky of OracleRedis Labs
 
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020Redis Labs
 
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...Redis Labs
 
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...Highly Available Persistent Session Management Service by Mohamed Elmergawi o...
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...Redis Labs
 
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...Redis Labs
 
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...Redis Labs
 
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020Redis Labs
 
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020Redis Labs
 
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020Redis Labs
 
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020Redis Labs
 
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...Redis Labs
 
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...Redis Labs
 
Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...
Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...
Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...Redis Labs
 
Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020
Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020
Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020Redis Labs
 
Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...
Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...
Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...Redis Labs
 
Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...
Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...
Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...Redis Labs
 

Mehr von Redis Labs (20)

Redis Day Bangalore 2020 - Session state caching with redis
Redis Day Bangalore 2020 - Session state caching with redisRedis Day Bangalore 2020 - Session state caching with redis
Redis Day Bangalore 2020 - Session state caching with redis
 
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
 
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...
 
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...
 
Redis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
Redis for Data Science and Engineering by Dmitry Polyakovsky of OracleRedis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
Redis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
 
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020
 
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...
 
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...Highly Available Persistent Session Management Service by Mohamed Elmergawi o...
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...
 
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
 
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...
 
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020
 
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020
 
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020
 
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020
 
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...
 
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...
 
Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...
Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...
Deploying Redis as a Sidecar in Kubernetes by Janakiram MSV - Redis Day Banga...
 
Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020
Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020
Moving Beyond Cache by Yiftach Shoolman - Redis Day Bangalore 2020
 
Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...
Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...
Real-time GeoSearching at Scale with RediSearch by Apoorva Gaurav and Ronil M...
 
Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...
Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...
Build a High-performance Partner Analytics Platform by Ashish Jadhav and Neer...
 

Kürzlich hochgeladen

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Kürzlich hochgeladen (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

RedisDay London 2018 - How We Run Redis in Multiple Datacenters

  • 1. How we run Redis in multiple datacenters Moe Chaieb, Shopify
  • 2. Shopify is the leading omni-channel commerce platform. Merchants use Shopify to design, set up, and manage their stores across multiple sales channels, including mobile, web, social media, marketplaces, brick-and- mortar locations, and pop-up shops.
  • 3. • One of the oldest and largest Ruby on Rails monoliths • 1000+ developers • 50 deploys per day • 80K peak RPS • 2.5 million LOC • 100 000 unit tests • 1.6 billion background jobs processed per day
  • 4. • Why Redis? • Architecture Overview • Multi-tenancy • Multi-DC • Resque • Resiliency • Persistence • Failovers Outline
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 13. Workers: web fashionstore.ca shop_id: 87235 pod_id: A location: east controller: checkout action: create
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20. • Ability to be resilient at the system level, not just at the component level • Expect single components 
 to fail routinely • Especially true in cloud environments • server pre-emption is out of your hands • expect processes to be restarted routinely • graceful termination, 
 fallbacks are key Platform Resiliency
  • 21. • Depends on the level of data criticality • Jobs are critical • Shopping carts are not • SIGKILLs are still dangerous • still potential for some data loss (up to 1 second) Redis Persistence
  • 22. • Useful for: • Incident response • Load balancing • Need to be fast • Need to be safe • Manually trigger (for now) Shopify Pod Failovers
  • 25.
  • 27. • Write throughput is high • stress on tunnels • cross-DC traffic $$$ • Writes are shortly no-oped • A bit more complex than 
 what we need Redis Replication & Resque
  • 28. • Bugs can result in data loss • Delays can result 
 in missed SLOs • Race conditions 
 with job workers TransferJobs issues
  • 29. • Sharding is helpful (in write-heavy applications) • No silver-bullet solution for multi-DC, active/passive architectures • Keep it simple • know when to build it yourself • …and when to defer to Redis Closing remarks