Online Community Platform with Spring Security
Jul 14, 2022
General System Requirements
Members should be able to post new questions
Member should be able to post comments and see previous comments
Members should be able to upvote specific posts
Members should be able to login in and sign up when necessary.
The system should be able to send Email Verification to new users upon signing up.
Main Usage
Create/ Delete/ Get/ Update posts
Create/ Delete/ Get/ Update user details
Add new comments to posts
Users and Roles
Members: Can view and create or delete a new post
Anonymous users can view posts
Admin: Responsible for account management, adding and modifying posts
System: mainly responsible for verifying the user.
Scaling Goals
Highly available: We need to make sure that we can handle random spikes in traffic during peak hours
Data Security and Privacy: We want the system to be safe and secure for the users access continuously/
Performance Goals
Moderate latency: We want to be able to send new verifications seamlessly without any downtimes.
Highly available: In the event of a failover, the email service isn't accessible, their operation is paused until failover end. The message will be stored in a Dead Letter Queue which could be restarted once again.
Cost Constraints
Minimise the maintenance: We want a reliable system that can handle random spikes in our system
Learn more about this project here
©philipdaquin 2023
philipdaquin