Posted on August 10, 2018 by staff

Making session stores intelligent with in-memory databases


Session stores are a fundamental component to a majority of web enabled applications – they provide better session durability and drive consistent user experience. There are various ways to manage user sessions but with today’s increasing user demands for more personalized digital experience, they need to be more intelligent and scalable.  There are several approaches to consider when you opt to elevate your session store; incorporate real-time analytics, migrating from a monolith to a microservices architecture, personalization, recommendation and more.  In this article, we look at using Redis Labs’ Enterprise-ready In-Memory NoSQL database.

What are session stores and why they need to be intelligent!

In a session-oriented application, the application stores all session-related data either in main memory or in a session store—a database that doesn’t lose the data when the application goes down. A session store captures session data (user profile information, messages, profiles and themes, preferences, etc.) that is connected to a user of a service and stored separately from the primary database.

Session stores are not essential for small use cases however, as soon as your application becomes popular and gets busy, user experience can be impacted with poor application response times. For a traditional session store to be intelligent, the data store must be able to capture intelligent data that might be calculated, inferred or otherwise not directly supplied by the user of the service.

There ways various ways to have your session stores handle more than just usernames and preferences — they can be used to drive personalized experiences. Some examples of intelligent session store patterns include:

  • Content surfacing – to keep users engaged by showing them new (and personalized) content
  • Activity pattern monitoring and personalization for engaging and dynamic web experiences powered by data that users provide to the site, both consciously and subconsciously
  • Group notifications providing a single and unique notification to a specific slice of users
  • Personalization making the service more specific and relevant to each user

The ‘making session stores more intelligent with microservices‘ white paper explores how to take supercharge your session stores to drive personalization through probabilistic data and real-time analytics.The white paper discusses how to use per-session data that is autonomously collected to drive featured content, group notifications and personalized resources. It sets out to answer the following questions about implementing intelligent session stores using Redis Enterprise:? Why it make sense to use a database as your session store

  • Why your session store should be approached as a microservice
  • What are some of the patterns for your session store?
  • How to implement a session store that includes calculated data
  • How using a database session store improve application pattern monitoring and personalization

Creating a session store microservice backed by the unique features of Redis Enterprise In-Memory database allows for scalable and data-rich patterns that would be otherwise impractical to implement in monolithic architectures.

To read more about how to implement intelligent session stores using Redis Enterprise download our whitepaper here.