ビデオ トランスコード サーバーがあり、ビデオがトランスコードされると、ビデオの変換されたバージョンを CDN に送信し、CMS 管理者にプロセスの進行状況を示す必要があります。
最初は (他のほとんどの RoR 開発者と同じように :) この目的のために gem を探しました。正直なところ、私はそれを見つけることができませんでした。これは私に何かが欠けていると思いました。
グーグルで検索すると、' paperclip 'と ' carrierview ' が回答として表示されます。しかし、ユーザーがファイルをサーバーにアップロードするような宝石は望んでいません。自分のサーバーから別のサーバーにファイルをコピーしたい。
いくつかの調査の結果、 Net::SCPと呼ばれる Ruby のネイティブ クラスを見つけました。これには進行状況レポート パラメータがあります。バックグラウンド プロセスに Resque を使用しています。だから、これを使うかもしれません。
しかし、このブロックを使用すると:
scp.upload!("/path/to/local", "/path/to/remote") do |ch, name, sent, total|
puts "#{name}: #{sent}/#{total}"
end
それは非常に頻繁に「送信された」パラメータを呼び戻します。毎秒約 5 回の更新クエリを DB に送信するのは得策ではありません。この状況の回避策はありますか?
それで、あなたは私に何をするように提案しますか?私が求めている目的のための宝石はありますか?または、何を使用すればよいですか?
ありがとうございました。