2006年11月02日

唐突にperlで鯖で鯖

実のところせっかくのレンタルサーバー
自由に使うために有料版だが勉強のため以外にはほとんど使っていない。
しかし実はこつこつといろいろと勉強して理解はしてきているのだ。

で、今日成り行きから「Socket server」が動くかどうかテストしてみることにした。
しかしどうもPHPでのソケットの設定がばばっと調べてわからなかった。
そこでPerlを使うことにした。

で、今日成り行きから「Socket Server」が動くかどうかテストしてみることにした。
しかしどうもPHPでのソケットの設定がばばっと調べてわからなかった。
そこでPerlを使うことにした。

コードについてはまだ完全に消化したとはいえないので
まぁ成り行きのみの記述とする。
とりあえずいろいろ調べて
xreaの掲示板でwebmasterが使えると明言している。のをみつけたので
問題ないだろうと思った。

問題はサーバーの場合無制限に使えるわけではないので制限時間があるだろうということ
スクリプトの時間制限は30秒と書いてあった。
Namazuの制限が3分なのだがもしもそれくらいだとちょっと使えない。

今回骨子となるコードは

new IO::Socket::INET(Listen => 1,
LocalPort => $portn,
Reuse => 1,
Proto => 'tcp' )


で実装はFlashのXMLソケットで単にエコーするものにしてみた。
WWW上とローカルで起動。

動いた!!

ちょっとばかり感動。

で時計と睨めっこ
30秒、1分、3分、5分

切れない。

ちゃんとサーバーが動くことがわかった。
しかしここではっとした。
ろくにサーバーのコマンドも知らないのだが
このままデーモンが起動していて「終了させる」方法を用意していない。
とりあえずこのままにしておいて後で考えようと思い
ちょっと用があって席を離れていたのだが
戻ってみると接続が切れていた。
再度起動、起動はする。
時間をチェックするようにしたところきっちり30分で切れるようだ。
どうもそれがプロセスの限界らしい。
ということは完結動作させれば連続動作もできそうだ。

ちなみにアサヒネットやXreaのFTPも割りと短い時間操作しないと切断される。

そう考えると30分以上のセッションが必要でない場合は充分なスペックではないかともいえるが
httpでのアクセスが必要なのでやはりFlash向きといえそう。

可能性は広がった気がするがPHPでのソケットもちゃんと作れるようにしないといけないと感じた。
まだサーバーはパーミッションとか階層とか適当だ。



posted by Xo_ox at 19:15| Comment(0) | サーバーサイド手習い | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。