-
Notifications
You must be signed in to change notification settings - Fork 30
Background on Implementation Approaches
Building a personalized activity feed tends to be a challenging task, due to the diversity of event types that it often includes, the personalization requirement, and the need for it to often scale to very large numbers of concurrent users. Therefore common implementations tend to focus on either:
- optimizing the read time performance by pre-computing the feed for each user ahead of time
- OR optimizing the various ranking algorithms by computing the feed at read time, with complex forms of caching addressing the performance requirements.
The first type of feed is much simpler to implement on a large scale (up to a point), and it scales well if the data is stored in a light-weight in-memory storage such as Redis. This is exactly the approach this library takes.
For more information about various types of feed, and the typical architectures that power them — please read:
SimpleFeed — easy to integrate pure-Ruby Redis-backed implementation of the Social Activity Stream feature.
© 2016-2017 Konstantin Gredeskoul, all rights reserved. Distributed under the MIT license.