Advice on VPS for Video Downloading Site.

Hi,

Someone I know is working on a project that enables downloading videos from YouTube and other video platforms, and they asked me for advice on which VPS to purchase.

Does anyone here have experience hosting such sites? What would be the minimum requirements?

Apart from bandwidth and storage, are there any other factors one should consider when choosing a VPS for this task?

Thank You.

Hello world.

Comments

  • I am guessing you are also "converting" the videos? It depends on how many concurrent users you expect and what is your expected performance.

    • If it's just for you and your friends personal use, 1 vCPU, 512MB RAM, 15GB disk, and 100+ Mbps is enough.
    • If it's for logged in user use on a not traffic heavy site, 4 vCPU, 4 GB RAM, 50GB disk, 200 Mbps is enough
    • If it's for logged in user use on a traffic heavy site or for public use, where you expect the user to wait up to 5 mins for their queue, 8 vCPU, 12 GB RAM, 512 GB disk, 1 Gbps is barely enough.
    • If it's for public use with high performance expectations, 16+ core CPU, 24 GB RAM, 2 TB disk, 1 Gbps, plus a dedicated graphics card for video conversion is needed.

    Remember, 1 core = 1 ffmpeg thread for video conversion. So 4 core = 4 simultaneous video conversions.
    More RAM = more cache for video download and conversion. If a GPU is present, video conversion goes much faster.
    Disk usage depends on how long you want the video to be stored. My estimates are based on about 48 hour video storage before deletion. If you want the video to be stored for longer, larger disk is needed.
    Network speed matters only for download, and even then, most video sharing sites limits connection so going for a 10 Gbps is not worth it. Moreover, most of the time is taken in converting the video...

    Most of these popular "download" sites uses 1 server (master node) for their their frontend where the user interacts, and multiple servers (slave nodes) in the backend doing the video conversion works. So you might want ask your "friend" to change his script to match that. If he is using yt-dlp for downloading the videos, a simple script is needed for the slave nodes to receive "work request" from the master node.

    Thanked by (1)randomhuman

    Never make the same mistake twice. There are so many new ones to make.
    It’s OK if you disagree with me. I can’t force you to be right.

  • Forget the VPS specs - you’ll get suspended fast no matter where you host it. YouTube downloading violates ToS everywhere, and providers actively block it. Even if it runs at first, once they detect traffic patterns or abuse reports, it’s over.
    Save the time and trouble. This isn’t like running a script on your own machine - hosting it publicly on a VPS? Not feasible long term. You’ll bounce from provider to provider until you find one that doesn’t care, and those come with their own problems.

    Thanked by (2)yoursunny randomhuman
  • @DariaVPS said:
    downloading violates ToS everywhere,

    Interesting, may I ask, do you follow every ToS?

    MicroLXC is lovable. Uptime of C1V

  • havochavoc OGContent WriterSenpai

    @DariaVPS said:
    YouTube downloading violates ToS everywhere, and providers actively block it.

    Providers block YouTube traffic? Detect traffic patterns for it? It’s the exact same data stream as watching yt so these supposed providers have some rather novel analysis techniques

    That all sounds rather strange…

    Thanked by (1)randomhuman
  • YouTube aggressively blocks servers downloading large numbers of videos. Unless it's a paid platform I don't think there is any host where it'll work.

  • By request of the family, I have a Proxmox container running MeTube for just that: https://community-scripts.github.io/ProxmoxVE/scripts?id=metube

    Crazy simple. Incredibly capable software. 1 vCPU & 2GB RAM for this use case.

    Thanked by (2)yoursunny randomhuman
  • @MallocVoidstar said:
    YouTube aggressively blocks servers downloading large numbers of videos. Unless it's a paid platform I don't think there is any host where it'll work.

    Large number = 10 videos per day? 100 videos per day? 1000 videos per day? What metrics is that based on?
    Does it also apply for logged in user or only if the user is not logged in (anonymous video download)? Does this apply for free user or also for premium users?

    @hornet said:
    By request of the family, I have a Proxmox container running MeTube for just that: https://community-scripts.github.io/ProxmoxVE/scripts?id=metube

    Crazy simple. Incredibly capable software. 1 vCPU & 2GB RAM for this use case.

    And your server did not get blocked like some of our concerned users stated? Amazing!

    @havoc said:

    @DariaVPS said:
    Forget the VPS specs - you’ll get suspended fast no matter where you host it. YouTube downloading violates ToS everywhere, and providers actively block it. Even if it runs at first, once they detect traffic patterns or abuse reports, it’s over.

    Providers block YouTube traffic? Detect traffic patterns for it? It’s the exact same data stream as watching yt so these supposed providers have some rather novel analysis techniques

    That all sounds rather strange…

    Providers/hosts dont care about youtube downloads. What they do care about is video conversion as it maxes our CPU core. Hosts cant/dont monitor your traffic pattern unless it is unencrypted and is torrent related. Abuse reports don't come from youtube. They dont bother notifying hosts.

    Well, you are entitled to your opinion, but unless you are willing to provide details and basis for your "assumption" I am with @havoc here. From my experience, youtube has never blocked "my friends" video downloads, even when pulling 100s of videos per day for nearly a month using the same server with 1 IPv4. And he runs it every 2~3 months to get new videos. Video lengths are between 3 mins and 5 mins.

    And for legal reasons, I must state that all videos are deleted immediately after download and this service is run for educational purposes only and is definitely not open to public. And I would never promote such behavior.

    Never make the same mistake twice. There are so many new ones to make.
    It’s OK if you disagree with me. I can’t force you to be right.

  • The machine spec is not very important. The IP will be restricted after downloading for a period of time.

  • edited August 20

    @DariaVPS said:
    Forget the VPS specs - you’ll get suspended fast no matter where you host it. YouTube downloading violates ToS everywhere, and providers actively block it.

    I don't think that will happen, I actually have hosted it for a month on shared hosting, they downloaded a few videos during that time. Dont think web hosy might have noticed it at all.

    As long as there isn't heavy traffic or continuous downloads, it should work fine.

    Hello world.

  • From my experience, youtube has never blocked "my friends" video downloads, even when pulling 100s of videos per day for nearly a month using the same server with 1 IPv4. And he runs it every 2~3 months to get new videos. Video lengths are between 3 mins and 5 mins.

    Do you know specs of his VPS and approx CPU Usage while downloading multiple vids?

    Hello world.

  • @randomhuman said:

    From my experience, youtube has never blocked "my friends" video downloads, even when pulling 100s of videos per day for nearly a month using the same server with 1 IPv4. And he runs it every 2~3 months to get new videos. Video lengths are between 3 mins and 5 mins.

    Do you know specs of his VPS and approx CPU Usage while downloading multiple vids?

    Master node (that servers the html page to user) uses a low specs VPS to serve a page to choose format and provide the url. It also hosts his database that keeps track of the videos and files.

    2 core CPU of Xeon (not sure which one)
    2 GB RAM (DDR4)
    10 GB SSD
    1 Gbps

    And 2 to 4 slave nodes with around:

    4 core CPU (no idea on model)
    6 GB RAM
    50 GB SSD
    1 Gbps

    Can convert 4 videos at the same time per slave node. Any more then that goes into workflow queue which is randomly picked up by the slave nodes to process.

    As far as I know, none of his IPs were blocked/banned as of yet.

    Thanked by (1)randomhuman

    Never make the same mistake twice. There are so many new ones to make.
    It’s OK if you disagree with me. I can’t force you to be right.

Sign In or Register to comment.