タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

phpとforkに関するrysterのブックマーク (7)

  • 子プロセス制御ふたたび : PHP Advent Calendar jp 2011 Day 8 - Blog::koyhoge::Tech

    はい、7日目の @scriptwork さんのエントリ「DateTimeクラスの落とし穴と対策 : PHP Advent Calendar jp 2011 Day 7」から引き続いて、PHP Advent Calendar jp 2011の8日目なわけです。 今回は何を書こうかずいぶん悩んで、ちょうど昨晩開催されたPHP忘年会2011@関東でネタ募集したところ、@sizuhikoさんが口走ったphpQueryネタをパクるという案もあったのですが、やはり正攻法で手持ちのネタでいくことにしました。 子プロセスfork このはてなダイアリーでの数少ないPHPヒットネタとして「pcntl extensionを使って一定個数の子プロセスに作業させる方法 - Blog::koyhoge」という記事がありまして、公開した2007年以来ぼちぼちとずっとアクセスを稼いでくれております。 ただこの時に書いたサ

    子プロセス制御ふたたび : PHP Advent Calendar jp 2011 Day 8 - Blog::koyhoge::Tech
    ryster
    ryster 2011/12/14
    これは良記事、phpでforkする記事はあんまないから貴重
  • Loading...

  • PHPで並列処理 - KoshigoeBLOG

    PHP で並列処理 - 個人的なメモと備忘録より。 ちょいといじくって『出来てる』気分に浸ってみた。実際のforkとかシグナルとかは曖昧なまま。 今の仕事で『GETクエリを変更して作った複数のURLに対して、複数クライアントからの同時リクエスト』についてのプチストレステストをする事になった。で、abで『異なるURL』に対してリクエストする事が出来るか分からないし、他のツールも思いつかない。探すのも面倒だし、あまり時間もないしという事でスクリプト書いた方が早いかなと思って家で調査。 きっと、RubyとかPerlとかだと普通にマルチスレッド使えて分かり易いんだろうけど、テスト対象のシステムがPHPで書かれてるし、そのリポジトリには出来るだけPHPコードを入れた方がいい気がしたのでPHPで調査。参考にした記事が2003年に書かれたものだったので、PHP5系ではこの方法じゃなくても出来るのかも。け

  • PHPで並列処理/個人的なメモと備忘録 2003年 11月

    >>PHP で並列処理 PHP で複数の Web サイトの更新チェックをするようなスクリプトを個人的に作っているのですが、その時のメモです。サーバからデータを取得する時に、PHP にはスレッドがありませんので、一つずつ取得していると、かなりの時間が掛かることになります。そこで、スレッドの代替になりそうなスクリプトを 2種類ほど考えてみました。PHP 4.3.0 以降でしか動作しません。また、Linux でしか確認していません。もっと良い方法がありましたら、教えてください。 まず、一つ目は、pcntl_fork() を使う方法です。この関数は、PHP のコンパイル時に、--enable-pcntl を付けてコンパイルしないと使用できません。詳しくは、プロセス制御関数についての説明を読んでください。pcntl_fork() を使って並列処理を行う方法を考えてみました。 例えば、$array に

  • PHPでpcntl_forkでふぉーくの薀蓄

    えー、勢いあまってPHPでマルチプロセスを実装してみました。 ある意味血迷ってるといまさらながら思いますが、最初は・・・言語かえるのやだし、ちょこっとググッたらできそうな感じだったので。。。 もちろん、やっとちゃんと動きましたよ。 ええかなりちゃんとしてます。 でも、、、Cとかお流行のJAVAに書き換える日はもう見えてるんで。ええ。 ググれば出てくるさんぷるクリプト 大体、「PHP pcntl_fork」でぐぐればいっぱい使い方が見つかります。みつかるけど・・・これだけではなんだかようわからない。 PHP: pcntl_fork - Manual //子プロセス生成 $pid = pcntl_fork(); if ($pid == -1) { // fork失敗 echo 'Failed forc process.'; exit(1); } else if ($pid) { //親プロセス

  • PHP と fork() | pasasの日記 | スラド

    PHP で fork() が使えるということを書いた。 けど、困ったことも発見。 fork() に失敗したときに、親プロセスが終了してしまう。 そのため、OS の制限などでそれ以上プロセスが生成できないときなど、 親プロセスでそれを検出して対処することができない。 できれば改善してほしいポイントだなぁ。 改善するのかどうかわからないので、一応応急処置をした。 修正ポイントは ext/pcntl/pcntl.c の PHP_FUNCTION(pcntl_fork) 関数の中の、 php_error を呼んでいる部分(212行目)の第一引数を E_ERROR から E_WARNING に変更。 とはいえ、個別に修正しなければならないのは面倒な上に、修正を忘れると問題だ。 とりあえずは、問題が発生するようなプログラムは書かないように気をつけよう。 (書く予定もないけど。)

  • エックスサーバー サーバー初期ページ

    このウェブスペースへは、まだホームページがアップロードされていません。 早速、エックスサーバー上へファイルをアップロードしてみましょう。 アップロードの方法などは、サポートマニュアルをご参照ください。

    エックスサーバー サーバー初期ページ
  • 1