acmpesuecc / acmpesuecc/SCB-Vulnerability-Analysis

Add Redis caching layer for MinIO operations

Đang mở
#2 22 bình luận 0 reaction 0 người được giao Xem trên GitHub
Bounty: 400 documentation enhancement
Ngôn ngữ chính
Python
Star
0
Fork
3
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

The current system performs direct MinIO operations for every request, which can lead to:

- High latency for frequently accessed data
- Increased MinIO load and potential rate limiting
- Poor user experience with slow response times
- Unnecessary network overhead for repeated operations

This issue involves implementing a comprehensive Redis caching layer to optimize performance and reduce MinIO load.

Technical Requirements:

1) Redis Integration:
- Deploy Redis as a Kubernetes service
- Add Redis client configuration to the GUI
- Implement connection pooling and error handling
- Add Redis health checks

2) Caching Strategy:
- Scan Results: Cache parsed scan results with TTL (default: 24 hours)
- File Metadata: Cache file information, sizes, and upload timestamps
- Scan History: Cache scan status and progress information
- API Responses: Cache frequently requested API endpoint responses

3) Cache Management:
- Implement cache invalidation strategies
- Add cache warming for critical data
- Implement cache statistics and monitoring
- Handle cache misses gracefully

4) Performance Optimization:
- Implement async caching operations
- Add cache compression for large objects
- Implement cache partitioning by scan type
- Add cache hit/miss ratio monitoring

Architecture Changes:

```
Current: GUI → MinIO
Proposed: GUI → Redis Cache → MinIO (on cache miss)
```

Acceptance Criteria:

[ ] Redis deployed as Kubernetes service with proper configuration
[ ] Redis client integrated into GUI with connection pooling
[ ] Scan results cached with configurable TTL
[ ] File metadata cached and updated on changes
[ ] Scan history cached for faster UI updates
[ ] Cache invalidation implemented for data consistency
[ ] Performance monitoring and metrics collection
[ ] Graceful degradation when Redis is unavailable
[ ] Documentation updated with caching configuration
[ ] Helm charts updated with Redis deployment
[ ] Performance benchmarks showing improvement

Files to Create/Modify:

- gui/redis-deployment.yaml - Redis deployment
- gui/webapp/main.py - Cache integration
- gui/webapp/cache_manager.py - Cache management logic
- gui/values.yaml - Redis configuration
- gui/webapp/Dockerfile - Redis client dependency
- documentation/markdown/technical.md - Caching documentation

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.