Security and Scalability - sebas0163/My_RESTaurante GitHub Wiki
Security considerations
-
Authentication an Authorization: This becomes a critical factor when the service anticipates a significant amount of users. Authentication is handled by username/password pair, and once the user's been authenticated, the session is maintained by using JWTs and encrypted using HTTPS.
-
Data Encryption: Every piece of data transferred to the backend API is secured on-the-flight by means of HTTPS.
Scalability Considerations
- Horizontal Scalability: By the use of minikube, horizontal scalability can be automated using tools like HorizontalPodAutoscaler we can get a seamless scaling, being able to distribute loads across available replicas and maintaining the desired performance.
- Vertical Scalability: While not as automated as horizontal scalability, it has to be done manually, minikube allows to define resource requests and limits for each pod.
- Database: The use of a noSQL database makes it easy to add new dishes to the menu as well as more future features without disrupting the information already stored.