プロが教えるわが家の防犯対策術!

自作で作ったPHPを1日中稼働させたいのですが、その場合のレンタルサーバーは
専用サーバーじゃないといけないのでしょうか?

今までは共有サーバーを借りたことはあるのですが、一つのPHPが長い場合数十分は
稼働しています。
Cronを使ってエラーなどで停止した場合には再稼働するようにしたいです。

使用者数は今のところ数名、一般には公開しないサイトです。
いずれはこのシステムを一般に公開して数十名くらいがこのシステムを使う予定なのですが
その場合は最初からクラウドサーバーを借りたほうが良いのでしょうか?

今まで共有サーバーしか使ったことがなく、専用サーバーやクラウドサーバーは使ったことはありません。
かなり初心者ですがどうぞよろしくお願い致します。

A 回答 (7件)

質問への回答としては、常駐プロセスを動かすというのが必須なら、No1に書いたように、


マネージドサーバー(OSの管理を業者がやってくれる仮想専用サーバーサービス)を借りると言うことです。

高いと思ってましたが、調べるとそうでもないですね。
http://www.sakura.ne.jp/managedserver/
さくらサーバーでも、年8万円台からです。

ただ、お書きになっている内容から、なぜ要件が、常駐プロセスを使わないと解決できないが、常駐プロセスを使うと解決できるのかがいまいち伝わってこないので、いろいろアドバイスしようとした次第です。

OSの管理を自分でやる(侵入されて情報が流出したり、悪事の踏み台にされても気にしない)のなら、年1万円くらいで仮想専用サーバーが借りられます。これは薦められませんが。
    • good
    • 0
この回答へのお礼

再度のアドバイスありがとうございます。

OSの管理はやはり自分ではできないので、そこは業者にお願いできるサービスのほうが良いですね。
さくらサーバーの紹介も助かりました。

なるべく処理を小分けにしてプロセス時間を短くしようと思います。
ただどうしてもDBに登録したキーワードが増えていくと、その再リクエストも増えていきますので
全体的なプロセスが増えるのは仕方ないかなと思っています。

お礼日時:2013/08/15 10:39

何のためにと言うか、



>リクエストがあったときにそのときの最新を取りに行けば良いのでは?

でだめな理由が今まで書かれている情報からはわかりません。
    • good
    • 0
この回答へのお礼

質問の内容はそこではないんですけど・・・。

最新情報はリクエストがあったときは最新かもしれませんが時間が経てば古くなるので
再び取得しにいきます。

DBにキーワードを溜め込んでいくとキーワードは増えますよね。
そうすれば再リクエストする量も増えていきます。

その結果、再リクエストを実行する回数も増え、全体的に実行時間も増えていくという結果になります。

この説明で大丈夫でしょうか?
あと、できれば質問の内容に答えて頂けると助かります。

お礼日時:2013/08/13 09:36

>取りに行く理由は最新情報を取得するためです。



何のために?

リクエストがあったときにそのときの最新を取りに行けば良いのでは?
    • good
    • 0
この回答へのお礼

何のために・・・そこまで詳しく話さないとダメなんですか?

お礼日時:2013/08/11 17:08

>リクエスト内容はほぼ無限にありますので(検索キーワードなど)、そうすると


>保存しておいたデータは他のユーザーも使うとは限らないのです。

前提がおかしいです。
そうだとすると、ユーザーからのリクエストの都度、WebAPIで情報を取りに行くしか他に手段はなく、常駐だの、1分毎だのの処理の出番は無いです。
    • good
    • 0
この回答へのお礼

再度のご回答ありがとうございます。

情報が少なくてすみません。
例えば○○○や△△△について検索したとします。
最初はAPIで取りに行って、たいてい数十秒で処理は終了します。
検索の場合はこれで大丈夫です。

しかしこれらのキーワードはどんどんデータベースにストックしていって、自動でAPIに情報を取りに行くようにしています。
取りに行く理由は最新情報を取得するためです。

このキーワードが数百件になってくると、1件1件の処理は数十秒で終わっても、全部の処理はかなり時間がかかることになります。

検索時は1件ずつなので1件辺り数十秒で処理が終わり、最新情報を取得する場合は件数が膨大なのでずっと処理をしつづけることになります。

お礼日時:2013/08/10 20:34

海外のVPS(10ドル以下で高容量)鯖探して


そこで動かすといいです~♪
    • good
    • 0
この回答へのお礼

ありがとうございます。
そのようなところを探すと良いのですね!
いろいろ調べてみようと思います。

お礼日時:2013/08/10 20:28

>PHPを使って、とあるWebサービスが提供しているAPIを実行してその結果を取得したいのです。



それはリクエストする人によらない結果を返すと言うことですよね?

ユーザーからのリクエストで処理を実行して返し、その結果を保存しておく。
次にユーザーからリクエストが来た場合、○○分以内の結果が保存されていればそれを返して、
古い結果しか無ければ、再度リクエストしてその結果をユーザーに返し、また保存しておく。

とか。
    • good
    • 0
この回答へのお礼

ありがとうございます。

はい、○分以内ならそれでも良いのですが、リクエストする人がどんなリクエストを
するかは全く読めないです。
リクエスト内容はほぼ無限にありますので(検索キーワードなど)、そうすると
保存しておいたデータは他のユーザーも使うとは限らないのです。

正直、PHPで作らずにWindowsアプリで作って、それをユーザーに渡す方式にすればよかったのですが
今は作り直している時間はありません。

自宅サーバーも経験がなく、そもそもapacheは接続ユーザー数に制限があったりWindowsの規約に違反するようで、やはりレンタルサーバーなどを借りたほうが良いのかなと思いました。

お礼日時:2013/08/10 09:56

>自作で作ったPHPを1日中稼働させたいのですが、その場合のレンタルサーバーは専用サーバーじゃないといけないのでしょうか?



普通はそうですね。共用サーバーだと、常駐プロセスのような処理は認めないことが多いと思います。

>今まで共有サーバーしか使ったことがなく、専用サーバーやクラウドサーバーは使ったことはありません。
>かなり初心者ですがどうぞよろしくお願い致します。

初心者が、専用サーバーやVPSサーバーを借りて自分でOSを管理すると、すぐに侵入されて悪事の踏み台にされてしまうことが多いと思いますのでやめましょう。

「PHPを1日中稼働させたい」というのをしなくてすむような処理方法を考えましょう。
普通は何か方法があるはず。何をしたいのですか?

あるいは料金が高いですが、OS管理を業者側がやってくれるマネージドサーバーというのを借りるか。
    • good
    • 0
この回答へのお礼

ありがとうございます。

>初心者が、専用サーバーやVPSサーバーを借りて自分でOSを管理すると、すぐに侵入されて悪事の踏み台にされてしまうことが多いと思いますのでやめましょう。

そのようなデメリットがあるのですね…。
さすがに初心者にOS管理は無理ですよね。

>「PHPを1日中稼働させたい」というのをしなくてすむような処理方法を考えましょう。

PHPを使って、とあるWebサービスが提供しているAPIを実行してその結果を取得したいのです。
そのWebツールを作ったのですが、ユーザーが一人や二人なら1日じゅう実行することはないのですが
十数人になってくるとけっこう処理をしまくる感じになると思うのです。

一つのPHPが実行する時間を短くして、Cronで1分置きに実行するとかはできるとは思います。

また、PHP自体をユーザーに渡して、apacheで自分のPC上で実行してもらうことも検討したのですが、
それだとソースファイルを渡すことになってしまうのでダメでした。

お礼日時:2013/08/09 22:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!