Local hosting and scaling questions

Hi @nginxs and congrats on hitting a limitation of PeerTube atm! :sweat_smile: It seems you have read about it on the thread you linked, which already suggests a solution for storage via an S3-compatible service. However, when it comes to transcoding, there is no good solution at the moment - we would need to implement a job system that allows child nodes to connect to it to process single transcoding tasks, and that is not yet done.

Technically you can pre-trancode a video, transfer it to your instance and then import it locally via the following script: PeerTube/support/doc/tools.md at develop · Chocobozzz/PeerTube · GitHub | but it is arguably a transitory solution, only befitting a single-instance user.

Both are very difficult to discuss, since transcoding and serving pages/videos are two different cases using different metrics:

  • transcoding is estimated based on the cumulated numbers of seconds to transcode, at a given quality, preset and bitrate. So the bare minimum would be to have a number of seconds of video to be trancoded say, per day ; and the list of resolutions which you enabled in your PeerTube configuraton.
  • serving pages is usually fine for most setups, since we heavily cache routes. However some pages/routes are still heavy on SQL queries despite optimizations, and the main bottleneck is usally how efficient the database is. Estimated using peak/average number of concurrent users.
  • serving files is the most bandwidth intensive operation in PeerTube, and is estimated based on the peak and average number of concurrent users. It can also be I/O intensive if you don’t use good caching configuration on your reverse-proxy as featured in our provided Nginx configuration. Using an S3 CDN to serve your files basically nullifies that bottleneck.

Again, thanks for your insterest in PeerTube!

1 « J'aime »