このアプリケーションでは、いくつかのルーチンタスクを実行するためのCronジョブの数を構成しています。RubyonRailsに取り組んでいます。使用しているフローを提供します。
crontab
*/2 * * * * user sh file_path/test.sh
test.sh
wget https://domain.com/url/key
routers.rb
post "/url/:key" => "cron_job_controller#action"
cron_job_controller.rb
def action
if params[:key] && params[:key] == "key"
---do some actions----
end
respond_to do |format|
format.html {render :status => Rack::Utils.status_code(:ok), :nothing => true}
end
end
ジョブが実行され、すべてのプロセスが正常に完了しています。しかし、応答200を取得した後、ホームフォルダに渡すキーの値としてnameを使用して不要なテキストファイルが生成されます。例のためのキー、key.1、key.2、等...。以下にコンソールの結果を提供します。
LAP-PS009:~/work$ sh file_path/test.sh
--2015-02-13 14:58:16-- http://localhost:3000/url/key
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:3000... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: `key'
[ <=> ] 1 --.-K/s in 0s
2015-02-13 14:58:18 (89.3 KB/s) - `key' saved [1]
このため、これらの不要なファイルを手動で監視して削除する必要があります。だから私はこの問題の恒久的な解決策を提案することを要求しています。リプレイを待っています。前もって感謝します。
APIエンドポイントを取得するだけcurl
でよい場合でも、それぞれのCRUDアクション(POST
/ PUT
/ DELETE
)で使用できます。
に固執しwget
たら、次の手順を実行します。
wget https://domain.com/url/key -o /dev/null -O /dev/null
上記は、出力をどこにもリダイレクトせず、ディレクトリがガベージされるのを防ぎます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加