I have a client that offers viewing and searching a digital image collection with tens of thousands of images for a daily, monthly, or yearly subscription fee. No, it’s not porn! The product works well but the problem they are having is the same problem ISPs have, a few users eat up the majority of the bandwidth.
From what I can tell some subscribers sit there for several hours each day sequentially downloading their daily limit of images. I don’t think they are even using automated software. One user has downloaded 1.97 GB this month, another 2.2, and another 1.95. The server has limited bandwidth. Plus if these users manage to sequentially download all the images I could see them just sharing the collection among themselves. The client spent a lot of money to scan and OCR the images, the collection is not available in digital format elsewhere.
The subscribers are already limited to 200 image views per day and that is disclosed when they subscribe. Additionally, I added delay code so when the image views are over 100 it delays numImages / 10 seconds each time it serves an image. So the 100th image is delayed 10 seconds, the 200th image is delayed 20 seconds. The delays still don’t faze the hardcore downloaders.
So, in addition to the 200 page a day limit and the per-image delay after 100 images, what would be reasonable to do with these mass downloaders? I’d almost suggest just giving them a pro-rated or full refund and cancel their subscription, but the client doesn’t want to make any enemies. Changing the images-per-day limit would be tricky because they were already promised 200 images a day.