What are the Slack Archives?

It’s a history of our time together in the Slack Community! There’s a ton of knowledge in here, so feel free to search through the archives for a possible answer to your question.

Because this space is not active, you won’t be able to create a new post or comment here. If you have a question or want to start a discussion about something, head over to our categories and pick one to post in! You can always refer back to a post from Slack Archives if needed; just copy the link to use it as a reference..

Hi, is it possible to operate Spryker with Redis in cluster mode? Did anybody tackle this topic alre

UKMHZV8LX
UKMHZV8LX Posts: 69 πŸ§‘πŸ»β€πŸš€ - Cadet

Hi, is it possible to operate Spryker with Redis in cluster mode? Did anybody tackle this topic already?
Currently we are dealing with a Redis cluster and the first feedback sounds bad: ERR SELECT is not allowed in cluster mode

Comments

  • UKHQ50XFX
    UKHQ50XFX Posts: 31 πŸ§‘πŸ»β€πŸš€ - Cadet

    we have recently switched from single-instance Redis to Redis Sentinel. it was pretty straight forward and works quite well

  • UKMHZV8LX
    UKMHZV8LX Posts: 69 πŸ§‘πŸ»β€πŸš€ - Cadet

    Yes, but Redis Sentinel and Redis Cluster are two different things.

  • UKHQ50XFX
    UKHQ50XFX Posts: 31 πŸ§‘πŸ»β€πŸš€ - Cadet

    true. I was just not sure, if you maybe meant the same thing (some people don't differentiate) and wanted to mention that Sentinel works.

  • Valerii Trots
    Valerii Trots SRE @ Spryker Sprykee Posts: 1,654 ✨ - Novice

    Here is a part of internal article:

    Redis Cluster
    Redis Cluster is much more advanced tool for distributed Redis setup: performance, scalability, sharding, etc
    
    Official documentation: <https://redis.io/topics/cluster-spec>
    
    This solution comes with limitations, particularly around multi-key operations. So in case of Spryker it doesn't work out-of-the box, since Spryker is using MGET and KEYS * operations, which are not supported in cluster mode (even with single shard - <https://stackoverflow.com/questions/51248853/how-can-a-single-shard-redis-cluster-give-crossslot-errors>)
    
    In future we may support it with following changes:
    
    Not using multi-key operations
    Writing keys with hashes end ensure, that they are written in the same slot: <https://aws.amazon.com/premiumsupport/knowledge-center/elasticache-crossslot-keys-error-redis/>
    
  • UKMHZV8LX
    UKMHZV8LX Posts: 69 πŸ§‘πŸ»β€πŸš€ - Cadet

    Thanks, that helps