A high-performance review system built with Spring Boot, integrated with Redis, RabbitMQ, MyBatis-Plus, Nginx proxy, and Docker deployment. It supports high-concurrency scenarios such as flash sales, login, and caching, ensuring scalability and reliability.
| Technology | Description |
|---|---|
| Spring Boot | Core Java framework |
| MyBatis-Plus | ORM framework to simplify CRUD operations |
| Redis | High-performance cache, login state, distributed lock |
| RabbitMQ | Asynchronous message queue to handle high concurrency in flash sales |
| Nginx | Static resource proxy and interface forwarding |
| Vue.js | Front-end UI & interaction |
| Docker | Containerized project deployment |
- Uses Redis to store verification codes
- Supports SMS-based login, stores login information in Redis and generates token
- Handles cache penetration and cache breakdown using mutex locks + logical expiration
- Uses Redis GEO features to implement nearby shop recommendation
- Leverages Redis + Lua scripting to verify flash sale eligibility
- Uses RabbitMQ for asynchronous order processing, avoiding overselling and duplicate orders
Current Implementation: Using personal user email to send verification codes via SMTP protocol.
High Concurrency Solution: Implemented RabbitMQ message queue to optimize flash sale order processing, significantly reducing database pressure.
Inventory availability check User order verification Inventory deduction Order creation and user event saving Asynchronous Processing: Leverages RabbitMQ for asynchronous handling of high-concurrency requests.
Token Bucket Algorithm: Applied to control request rates during flash sale events.