アップロードされたメディア ファイル (ビデオとオーディオ) をローカルではなく S3 でホストするかどうかを考えています。ダウンロードごとにユーザーのアクセス許可を確認する必要があります。
get_file
したがって、最初にユーザーのアクセス許可を確認し、次に S3 からファイルを取得し、send_file を使用してユーザーに送信する のようなアクションがあります。
def get_file
if @user.can_download(params[:file_id])
# first, download the file from S3 and then send it to the user using send_file
end
end
ただし、この場合、サーバーは (不必要に) 最初に S3 からファイルをダウンロードしてから、ユーザーに送信します。S3 のユースケースは、Rails/HTTP サーバー スタックをバイパスして負荷を軽減することだと思いました。
私はこれを間違って考えていますか?
PS。ファイルのアップロードには CarrierWave を使用しています。それが関連しているかどうかはわかりません。