The brief design is
- Actor. The object that performed the activity.
- Verb. The verb phrase that identifies the action of the activity.
- Action Object. (Optional) The object linked to the action itself.
- Target. (Optional) The object to which the activity was performed.
For example: justquick (actor) closed (verb) issue 2 (object) on django-activity-stream(target) 12 hours ago
For user friendly,
- we can combine the actors into one line to make the feeds less;
- we can use redis to generate feeds per user (feed:user_id);
- split online users and offline users, push the online users first.