-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Support user upload directly to S3 #5314
Comments
|
Here is a proposed client uploader that supports both local storage and S3. |
Misinterpreted the issue on first read, thought it was talking about S3 upload on server side. Thanks for implementing the client bits! 🚀 |
@kukhariev I saw that you released new versions with support this. Huge thanks for your work! 🚀 Should we treat it as experimental or should it be stable? |
@kontrollanten i hope - stable. It's difficult to testing. |
I've been looking deeper into this now. The current video upload functionality parses the video file to get the resolution and video duration when upload is done. I propose that instead of parsing the video file during the HTTP request, it should be handled by a job. By putting workload from the web server we minimize the risks of crashing ongoing processes when doing restarts/upgrades of PeerTube. In the long run PeerTube should support remote workers for handling jobs, whom can be terminated in a controlled way (i.e. terminate when all ongoing jobs are done). @Chocobozzz any comments, or should I start working on a PR where video parsing is done in a job? |
I created a sequence diagram showing a possible workflow |
This issue feels like the natural next step now that remote transcoding is finished (#947). PeerTube would never have to touch a single video file! |
Updated draft including runners and chapters: |
Describe the problem to be solved
Currently users are uploading their files to the PeerTube server. This may affect the upload speed but it also makes PeerTube hard to scale. In case running a single PeerTube server behind a load balancer and that server is replaced by another, it will make any ongoing uploads to fail.
Describe the solution you would like
Uploads directly to S3. Based on this guide https://www.altostra.com/blog/multipart-uploads-with-s3-presigned-url it could work as follows:
This would be a great step forward to be able to scale PeerTube.
The text was updated successfully, but these errors were encountered: