openzim / openzim/python-scraperlib
Add S3 based optimization cache support
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 31
- Fork
- 27
- Merge trung bình
- 3 ngày 7 giờ
- Pull request đã merge (30 ngày)
- 2
Mô tả
We use kiwix_storagelib for implementing S3 based optimization cache in the scrapers. However, this gives rise to redundant code. We put a version of the file along with the optimizer version as the metadata always. So, this can be better implemented in scraperlib. For a start, we can have a caching module that can have 3 functions, (or maybe a class containing methods). The primary 3 things we need are -
- download_from_cache()
- upload_to_cache()
- check_credentials()
There can be several ways to have this, but it should at least fulfill the following -
- Compare optimizer_version
- Compare file_version
Optional things can be to check file upload date and discard if it's older than a specified amount of time. If we go for a class based approach, we can also explore possibilities to improve performance.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu bằng cách xem xét việc sử dụng kiwix_storagelib hiện có trong các scraper và cách các phiên bản của optimizer và tệp được lưu dưới dạng metadata. Xác định điểm truy cập của cache và xác minh rằng thông tin xác thực, các lượt tải xuống, các lượt tải lên và cả hai phép so sánh phiên bản đều được bao phủ; issue không nêu tên tệp hoặc bài kiểm thử cụ thể nào.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- aws, python
- Lĩnh vực
- backend, cloud
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 35/100