@hadriz
Few questions to consider initially.
How many users (max) can use this functionality?
How many article pages will be there? (consider the growth)
Consider following:
- Provide a button/icon on all pages for user to bookmark or unbookmark. A servlet can be used for that.
- Manage ugc storage in Mongo/Solr set up (Specially if there are other ugc items that might be generated.) Each bookmark can be an entry or just save an entry for each user which contains a list (may be tricky if sorting).
- Manage ugc storage in jcr. If there are going to be large number of nodes (millions eventually say after couple or more years) ugc sync for all publishers may be a problem later. In this approach utilizing cache can be helpful. But the path has to be unique per user. This can create lot of files to be cached.
Also consider managing bookmarked pages that will be deactivated and how those can be cleared from user's bookmarked list. This may lead to unnecessary 404s