Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] AsyncIO-based service class - ICloudPyAsync #10

Open
mandarons opened this issue Dec 13, 2022 · 0 comments
Open

[FEATURE] AsyncIO-based service class - ICloudPyAsync #10

mandarons opened this issue Dec 13, 2022 · 0 comments
Assignees
Labels
new feature New feature or request

Comments

@mandarons
Copy link
Owner

Use case
As an iCloud user who has several gigs of data, I want to download all of my data and keep it in sync locally faster so that I can be more productive.

Describe the solution you'd like
Currently, this library performs sequential downloading of iCloud data. This is a huge performance bottleneck especially for media and documents (e.g. https://github.com/mandarons/icloud-drive-docker). Downloading from iCloud servers is inherently IO-bound. Using AsyncIO should significantly boost download performance.

Describe alternatives you've considered
Alternative can be multithreading. However, it is not optimal as IO-bound operations will continue to throttle all threads.

Additional context
Some relevant info: https://medium.com/radix-ai-blog/performant-http-with-aiohttp-in-python-3-756580e54eff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new feature New feature or request
Projects
Status: 📋 TODO
Development

No branches or pull requests

1 participant