This is Advance ecommerce project
Minimal Coupling
High Cohesion (Focus)
I am trying to avoid Monolith because it's hard to maintain.
- RESTfull API
- Token based authentication
- Uploading files
- Sending emails, Fake SMTP for dev
- Running background tasks
- Performance testing
- Caching
- Schedule SMS send
- Automated Testing
Dummy data populate from mockaroo
Serializing Relationship
Primary Key
String
Nested Object
Hyperlink
Token create
http://127.0.0.1:8000/auth/jwt/create
http://127.0.0.1:8000/auth/jwt/refresh
JWT refresh token
URL: http://127.0.0.1:8000/store/
-
Product list url:http://127.0.0.1:8000/store/products/
-
Product Details url:http://127.0.0.1:8000/store/products/423/
-
User Create http://127.0.0.1:8000/auth/users/
Type of backend for email:
- SMTP(default)
- Console
- File
- Locmem
- Dummy
Long Running tasks:
- Processing Images and videos
- Generating reports
- Sending Emails
- Running machine learning models
- unittest
- pytest
- More Features
- Tone of plugins
- Less boilerplate
Tests should have a single responsibility That can be multiple assertion
locust -f locustfiles/browse_products.py
Open Browser
http://localhost:8089/
- Optimize the Python code
- Re-write the query
- Tune the database
- Cache the result
- Buy more hardware
- Redis install on docker
docker run -d -p 6379:6379 redis
- DEBUG
- INFO
- WARNING
- ERROR
- CRITICAL
gunicorn core.wsgi
docker-compose up --build