現在、さくらインターネットのレンタルサーバ「ビジネスプラン」を借りています。
cronを使用していますが、1回あたりの実行時間が時々1分を超えることがあり、cronが不定期に強制停止されてしまいます。
他ユーザの迷惑にもなりますので、以下のような条件に合うレンタルサーバを借りたいと思っています。
専有サーバでないと厳しいと思うのですが、なるべく安くてお勧めのサーバを教えて下さい。
○環境
・PHP、MySQL、smarty、独自ドメイン、メール使用
○cron
・1回あたりのcronの実行時間:数十秒~3分以内
・できれば10分間隔等でcronを動かしたい。
○その他
・Linux系サーバ知識に疎いので、OS、MySQL、メール環境等が予め用意されている状態が必須です。
(OSインストールからは敷居が高くできません。smartyぐらいなら何とかできそう。さくらのようにコンパネから各種設定ができれば嬉しい。)
・さくらのマネージドサーバ(Atomプラン)が良さそうですが、もう少し安いサーバがあればと思います。
1回あたりの実行時間が1分を越えるような場合、共用サーバーではなく、専用サーバーで運用した方が良いと思います。
さくらインターネットにも専用サーバーがあると思います。
また、下記のサーバーを使っている方も多いようです。
・WADAX
http://www.wadax.ne.jp/
・KAGOYA
http://www.kagoya.jp/
・GMO
http://shared.gmocloud.com/
・ASUKA
http://asuka.jp/
その他、Googleなどで専用サーバーで検索しても多数のサイトが出てきます。
なお、実行時間が心配ですので、アパッチのCGIなどの実行時間の制限について、予めレンタルサーバー各社に相談しておくと良いと思います。
Gmailでメールボックスを作成して、DNSのレコードをGmailの指定通りに作成するだけで、自分のドメインのメールサーバとして動作します。無料なので、使わない手はないと思います。
http://www.google.com/apps/intl/ja/group/index.html
http://www.liaison731.com/google/gmail/18-google-apps-gmail.html
http://enet-corp.com/gmail.htm
10個までのメールアドレスで済むなら無料です。それ以上の場合は有料です。
メールサーバだけGmailで別運用にしておけば、レンタルサーバの選択肢が広がると思います。
+プロセスリスト内に目的のプログラムが動作しているときは次回にパス
+動作していないならバックグラウンドでシェル(プログラム)を起動
これだけでcronへの負担は無くなるはずです。
> 独自ドメインのメールでもGmailが使えますよ。
こちら、初めて知りました。無料ですし、確かにメールサーバはGmailを利用できそうですね。
ありがとうございます。
> それとcronでの処理に時間が掛かるのであれば、直接シェルを呼ばずに、ワンクッション入れて、杉のように書けば良いと思います。
cronやシェル関係はほとんど知識がないため、もう少し詳しくお聞きしたいです。
この方法で実装できれば、問題が解決するのかイマイチ良く分かっておりません。
というのも、現在はこれ以上処理を分割できない最小単位のPHPプログラムで実行に60秒以上かかることがあります。(web上からファイル取得、ファイル内容解析=ここで非常に時間がかかります、DBにデータ書き出し)
さくら側のcron設定画面の注意によると「実行頻度が1時間以内に連続する場合や、CPU処理時間が60秒以上連続で利用される場合、予告なく設定解除される場合があります。」とあります。(cronというよりも)1プロセスの実行時間が問題になっている気がしています。
こういった状況で、バックグランドでプロセスを動かしたとしても、今回の問題が解決されるのか、イマイチ良く分かっておりません。
何かアドバイス等を頂けますと幸いです。
ただし、全ての制限を解除出来るわけではありませんし、サーバーの管理を自分でやらないといけなかったり、サーバーの設定や監視など個々の作業が有料の場合もありますので、十分、検討された方が良いと思います。
「実行頻度が1時間以内に連続する場合や、CPU処理時間が60秒以上連続で利用される場合、予告なく設定解除される場合があります。」というのは共用サーバーの話のように思われます。
専用サーバーでは、アパッチの処理時間の制限などの設定も自由に出来るかもしれません。
検討しているサーバー会社に相談してみると良いと思います。
私の書き方が悪かったのですが、「実行頻度が1時間以内に連続する場合・・・」と言っているのは共用サーバの話になります。
ここの部分で現在引っかかっており、専用サーバを検討しているといった状況です。
処理時間制限等はレンタルサーバ各社に問い合わせてみます。
ありがとうございます。