Reduce memory footprint of SDK by separating namespace imports
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
Hướng nghiên cứu
Bắt đầu bằng việc xem xét cách SDK hiện đang import các module namespace, đặc biệt chú ý đến các namespace team và team_log. So sánh việc import riêng từng namespace với lazy loading, và coi việc giảm mức sử dụng bộ nhớ mà không làm hỏng hành vi hiện có của SDK là Definition of Done.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Why is this feature valuable to you? Does it solve a problem you're having?
The Dropbox API and SDK cover a large range of functionality while some apps only use a small subset. This may be particularly true for some namespaces such as team and team_log which require different Dropbox subscriptions.
Importing all modules to cover the full API requires a relatively large amount of memory (~30 MB without 3rd party modules such as requests). A large fraction of this actually comes from the team_log namespace.
Describe the solution you'd like
Would it be possible to have separate classes for different namespaces and import modules only as needed? This of course would be a major change in design and may deviate from how other Dropbox SDKs handle this. Nevertheless, it may be worth considering, especially as new namespaces to support an evolving product will be added in the future.
Describe alternatives you've considered
Lazy loading of modules, at the point of use, may be an alternative.
- Ngôn ngữ chính
- Python
- Star
- 983
- Fork
- 331
- Merge trung bình
- 3 phút
- Pull request đã merge (30 ngày)
- 10
Hướng dẫn đóng góp
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.
Issue khác của dropbox/dropbox-sdk-python
-
question
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
dropbox/dropbox-sdk-python#585 · 4 bình luận ·
-
enhancement
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
dropbox/dropbox-sdk-python#491 · 1 bình luận ·
-
enhancement
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
dropbox/dropbox-sdk-python#482 · 1 bình luận · 2 reaction ·
-
question
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
dropbox/dropbox-sdk-python#476 · 3 bình luận ·
-
bug
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
dropbox/dropbox-sdk-python#475 · 1 bình luận ·
Tất cả issue của dropbox/dropbox-sdk-python
Issue tương tự
-
bug confirmed issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
open-webui/open-webui#30750 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
good first issue
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100