タグ

cronに関するhokacchaのブックマーク (5)

  • cron等をつかって外部のAPIに問い合わせる場合は、毎時0分を避けるのが大人のマナー - blog.nomadscafe.jp

    なんかtwitterで書いたらウケたっぽいので cronをつかって外部のAPIに問い合わせる場合は、毎時0分をさけるのオススメ!!!!お兄さんとの約束だ!!! — masahiro nagano (@kazeburo) August 9, 2012 某サービスのAPIへの問い合わせ件数を調べると、毎時 0分台(0秒から59秒)のアクセスは1分から59分までの1分間の平均アクセス数の5倍から8倍にもなります。 これはおそらく、crontabの設定が 0 * * * * /path/to/call_foreign_api になっていることが多いからじゃないかなぁと思うのです。 その結果、サーバのロードアベレージは このように毎時0分だけ跳ね上がってしまいます。サービスを快適に提供できなくなる可能性があるので、APIの利用を制限したり、サーバを追加しなければなりません。これはサービス利用者、サー

  • cron で > /dev/null して椅子を投げられないための3つの方法 - 酒日記 はてな支店

    (タイトルは釣りです) いい加減、>/dev/null 2>&1と書くのをやめたらどうか - DQNEO起業日記 この記事のタイトルが twitter で流れてきたのを見て、「そうだ!出力を /dev/null に捨てるなんてとんでもないよね!」と思ってよく読んだら /dev/null に間違いなく捨てる方法だったのでつい crontabに > /dev/null 書いたら椅子投げる 2012-06-13 00:01:17 via YoruFukurou とつぶやいてしまったのですが、では出力を捨てないためにはどうすればいいのか。現時点での個人的ベストプラクティスを書き留めておきます。 デフォルト : メールで送る (MAILTO) せっかく cron daemon がログを捨てないためにわざわざメールで送ってくれるのに、それを > /dev/null で踏みにじるとはひどい。 とはいえ、

  • Kazuho@Cybozu Labs: setlock を使って cron をぶんまわす方法

    « データベースをコピーするモジュール DBIx::Replicate | メイン | Tritonn (MySQL+Senna) の join を高速化 » 2008年01月30日 setlock を使って cron をぶんまわす方法 事前計算や DB 再構築を手軽に実行するのに cron は便利ですが、タスクのまわし過ぎによるサービスのパフォーマンス低下や実行順序の制御を別途行う必要があります。自分は、そのためのツールとして、daemontools の setlock コマンドがお気に入りです。setlock は、flock を用いて、タスクの待機や実行中止を制御することのできる、とても小回りのきくプログラムです。 1-59/* * * * * /usr/local/bin/setlock -nx /tmp/precompute.lock /usr/local/bin/setlock

  • cron の実行順序を制御する方法 | Carpe Diem

    cron のバッチ処理の実行順序を制御するときは、setlock を使うと便利そうだったので、設定してみた。この方法では、setlock に setlock を設定している理由がよく分からなかったので、何はともわれ試してみた。 setlock についてのヘルプは、こちら。 まず、daemontools の RPM は、daemontools.spec を使うとすぐに作ることができる。daemontools は、/usr/local/bin にインストールされる。 次に、バッチ処理に見立てた簡単な次のプログラムを準備する。 1.rb: 一番最初に実行される毎時バッチ #!/usr/bin/env ruby require ‘date’ p “#{__FILE__} start #{DateTime.now}” sleep 120 p “#{__FILE__} end #{DateTime.n

  • Dolphy PHPスクリプト定期実行

    WebAp  PHPスクリプトの定期実行 概要 ここではPHPスクリプトを自動で定期的に実行するための設定方法を紹介しています。 動作環境 Linux, cron, PHP CLI版を使います。 設定例 スクリプトを用意する スクリプトを作成しFTPなどでサーバに転送する。 例では /home/someone/php/kuji.php を用意する スクリプトを cron から定期実行させるようにSSHでログインして設定する この例では毎日 9:00 に kuji.php を実行しています。 PHP CLI 版は /usr/local/bin/php にあるとします。 crontab -e MAILTO="" 0 9 * * * /usr/local/bin/php /home/someone/php/kuji.php :wq [Enter] を入力して設定完了 設定例 分 時 日 月 曜日

  • 1