ロイヤリティフリーの画像をダウンロードできる画像バンクサイトを開発中です。ボットを使用しているユーザーや頻繁にダウンロードしているユーザーの速度を落としたいので、1 日のファイル制限を設定し、ファイルを配信するスクリプトに可変スリープを組み込みました。前回のダウンロードの完了時刻をデータベースに書き込み、次のダウンロードが開始されたときに経過時間を確認します。それが N 秒未満の場合、M 秒だけダウンロードを遅らせ、連続する違反で M を 2 倍にします。スクリプトがサーバーの実行時間制限に達するまで、これは正常に機能します。
私のホスティング会社は、スリープ時間が実行時間にカウントされることを確認しています。
開発段階で慎重すぎませんか?
PHPスリープを使用せずにサイトを悪用しているユーザーを検出してスローダウンする方法について何か提案はありますか?