PHPで長時間かかる重い処理を行うとき、 マルチスレッドで動かせたらなぁ!と思うことがよくあります。 マルチスレッド処理を行うことで、時間のかかる処理を 複数同時に並列実行でき、高速化することができます。 (特に通信処理などで遅延がある場合に有効です) PHPにはpcntl_forkというプロセスをフォーク(複製)することが できる関数がありますが、これはPHPをCGIモードで 動かしている場合にのみ有効です。 通常はPHPをApacheモジュールとして動作させていることが 多いので、これが使えないケースが多々あります。 他には、system関数などでシステムコールを行い、 など & を使って実行するという方法もありますが、 これもphpがCGI版として実行できなければいけません。 システムコールで呼ぶプログラムをPerlなどで 書けばいいのですが、できればPHPで全部統一したいものです。
Ratchet WebSockets for PHP Ratchet is a loosely coupled PHP library providing developers with tools to create real time, bi-directional applications between clients and servers over WebSockets. This is not your Grandfather's Internet. Learn more » Fast & Easy Write your own chat (aka "Hello World!" for sockets) application in a matter of minutes. After understanding "the new flow" - event driven p
前までPHPの環境といえば、Apache + mod_phpだったわけですが、Apacheとかどデカいwebサーバーってはたして必要なの?ってことで、最近だとwebサーバーだけならNginxだけでいいのではという結論に達しまして。Nginxはリバプロとして使われている企業が多いと聞きますが、PHPの場合、PHP5.3からPHP-FPMがデフォルトで取り込まれたってことで、Nginx(webサーバー) + PHP-FPM(FastCGI)構成に移行してしまいました。 その時のメモです。尚、環境はCentOSです。 configure (Nginx) $ ./configure \ --prefix=/usr/local/nginx \ --with-http_ssl_module \ ... SSLはこのオプション指定しないと入らない --without-mail_pop3_module \
Notfornoone Yes, its a double negative. About me. Introducing Debug Bar Action Hooks: Gain Insights into Your WordPress Actions Hello, fellow WordPress enthusiasts! I'm excited to introduce a new tool to enhance your WordPress development experience: Debug Bar Action Hooks. If you're looking to gain deeper insights into the actions firing within your WordPress site, this plugin is tailor-made for
Formulaとあわせて手順を公開されてる記事があったのでそちらを参考に。 Formulaを落としてきて所定のディレクトリに配置。 $ curl -O https://github.com/ampt/homebrew/raw/php/Library/Formula/php.rb $ mv php.rb `brew --prefix`/Library/Formula インストールオプションを確認したり。 $ brew options php php --with-mysql Include MySQL support --with-pgsql Include PostgreSQL support --with-mssql Include MSSQL-DB support --with-fpm Enable building of the fpm SAPI executable --with-
さくらのVPS を試用させていただいた以下の記事のまとめです。 さくらのVPSにArch Linuxをインストールする(1) さくらのVPSにArch Linuxをインストールする(2) さくらのVPSにArch Linuxをインストールする(3) 最近、サービスが開始された「さくらのVPS」早速試用してみました。 同様の他社サービスと比較して良いな、と思ったのが次の三点です。 ・KVMで仮想化されており、swapが利用可能である(かつ、リソースの割り当てがリッチ) ・コントロールパネル(Webインターフェース)からOS再インストールが簡単に行える(数分で再インストールが完了する) ・コントロールパネル(Webインターフェース)のリモートコンソール機能が秀逸。 ポチッと申し込んでから一時間足らずでrootログイン出来るようになりました。 rootパスワード通知メールの受信タイミン
はじめに もう1週間経ってしまっていますが,新年,明けましておめでとうございます. 3日ほど実家には帰ったものの,2010年と2011年との境目がない感じにテンパり続けているissmを,本年もどうぞよろしくお願い申し上げます.(あと,こちらの本もあわせてよろしくお願いしますw) ほぼ恒例になってきた年1回のぶろぐ気分転換を,本年もテキトーに行ってみました.コンセプトなどはありません.そのついでに,昨年は lighttpd で動作していたものを,今回は nginx で動作させてみました. 以下,本ぶろぐ,というか WordPress が nginx 上で動作するための設定の記録などをざっと紹介します. レシピ 次のような環境で試してみます. CentOS on さくらのVPS nginx 0.8.53 MySQL 5.1.50 PHP 5.3.4 WordPress 3.0.4 $USER=
nginx+memcachedがめちゃ気になったので試してみました。 元ネタは下記です。 A 53,900% speedup: Nginx, Drupal, and Memcache bring concurrency up and page load time way down | TechnoSophos nginxをリバースプロキシに利用した構成で、バックエンドの出力をmemcachedにキャッシュしておけば、次回リクエストではnginxがそのキャッシュを読み取ってそのまま出力してくれます。 つまりバックエンドにリクエストを経由させずにnginxから即出力するのでかなりの高速化が見込めるという優れものです。 リンク先ではバックエンドにDrupalを利用していたのですが、ここではCakePHPを利用してみます。 1. 全体構成 リバースプロキシにnginx(Port: 80)を使い、バ
PHP で MeCabと言えば MeCab PHP extension を使うのが一般的だろうと思うけど、今回はそれを使わずにやってみようというお話。 extension を使えない環境での MeCab 使用に役に立つかも。 PHP で MeCab を使うときに面倒なのは、解析したい文章を直接システムコマンドの引数として渡すことができないところ。 ファイル名なら引数として渡せるので、一旦ファイルに保存して、それを引数で渡して解析する・・・という方法が採れなくはないけど、なんか美しくない。 やはり、ファイルなど使わず、そのまま直接解析させたい。 そんなときは、結論から書くと、以下のようにすればいい。 $descriptorspec = array( 0 => array("pipe", "r") , 1 => array("pipe", "w") ); $process = p
Facebookが大規模スケーラビリティへの挑戦で学んだこと(後編)~キャッシュが抱えるスケーラビリティの問題とデータセンターにまたがる一貫性 全世界で3億人を超える会員を抱え、世界最大のSNSとなったFacebook。同社の技術担当バイスプレジデント Jeff Rothschild氏が、10月8日に米カリフォルニア大学サンディエゴ校で行ったセミナー「High Performance at Massive Scale-Lessons learned at Facebook」の内容を再構成して紹介します。 (この記事は「Facebookが大規模なスケーラビリティへの挑戦で学んだこと(前編)~800億枚の写真データとPHPのスケーラビリティ問題」の続きです) キャッシュがスケーラビリティに大きな役割を果たしている Facebookの主な役割は、ユーザーが簡単に(友人たちの)情報を集めることがで
2009-09-09 追記 結構、検索されてるようなので書いときます。 現在、筆者はPEAR依存が面倒くさくなったので、こちらを使ってます QdmailReceiverとは - QdmailReceiver Multibyte mail decoder & POP Client 自重気味にα版ってことで、よろしくお願いします。 なんかヤバイとこがあれば、コメントいただけるとうれしいです。 スパムっぽいものを検出できるようにしてみた。 添付ファイルにも対応(イメージファイルのみ) エラーメール時のアドレス取得ができるようにしてみた 使い方 Controller <?php var $components = array('MimeDecode'); function decode() { // $msg にメールを取り込み後 $this->MimeDecode->decode($msg);
Face detection in pure PHP (without OpenCV) Par Maurice Svay le vendredi, juin 19 2009, 12:17 - Technologie - Lien permanent Une résumé en français est disponible en fin d'article. Lately, I've been looking for ways to detect faces in photos with PHP. Nowadays, face detection is built in many consumer products (camera obviously, but also Google and iPhoto), and seems to be a pretty common job. So
ウォーターマーク。グーグルマップや、著作権を意識する人は、コレ複製禁止。 簡単にそういうことが出来ると、とてもいい。 WEB上では、phpspot開発日誌等で、 PHP+GDを使ったウォーターマークのスクリプトが公開されていたりする。 やってみると、アーコレ結構大変なんだ。 と思った。 あまり贅沢をしないで、「なんちゃって型、ウォーターマークを作ったらうまく行ったので公開。」 <?php $watermark = "type.png"; $base_image = "base.jpg"; $base = ImageCreateFromJpeg($base_image); $cover = ImageCreateFromPng($watermark); list($width2, $height2) = getimagesize($watermark); ImageCopy($base, $
PHPのプログラム内に重い処理を実行する部分がある場合、普通はその処理が終わるまでプログラムは先に進みません。でも、処理だけさせておいて、プログラムを先に進めたい場合もあると思います。 今回は、そんな重い処理をバックエンドで実行させる簡単な方法をご紹介します。このやり方はLinux/Unix環境で使えます。 時間がかかるスクリプトの例(test.php) <?php /* POSTされた時に、時間がかかる処理が走る。ここでは何もせずに10秒ストップ*/ if ($_POST['submit']) { sleep(10); echo 'finish!'; } else { ?> <html> 重い処理が走るスクリプト <form method="post" action="test.php"> <input type="submit" name="submit" value="重い処理を実行
Laconica (pronounced “luh-KAWN-ih-kuh”) is a Free and Open Source microblogging and information portal and platform. It helps people in a community, company or group to exchange short (140 character) messages over the Web and follow the latest news related to online marketing, SEO, Web, management softwares and advancement in information technology. Users can choose which people to “follow” and re
さて、1週間ぶりにこのシリーズ再開。 #正月の間に下書きしておいた記事ストックがなくなったから、というのはここだけの話w。今後は週1くらいのペースを目標に続けていきます。。 ということで今回は、ログインをしてセッション管理が必要なサイトを作るときの話です。 携帯サイトではCookieが使えない。 大きく立ちはだかるのが、Cookie使えない壁です。imode端末のすべてとソフトバンクの一部機種(C型・P型)がCookieに対応していません。auはOKなんだけどね。 なのでCookieが使えないなら、urlパラメタにセッションキーをいれてずっと引き継いでいくことになります。 PHPの機能 php.iniの設定で操作できることに、次の2つがあります。 session.use_cookies session.use_cookiesによりクライアント側にセッションIDを保存する際にクッキーを
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く