タグ

高速化とphpに関するsuninのブックマーク (7)

  • PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイト:phpspot開発日誌

    PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイト 2011年05月23日- Benchmarks PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイトがあるようです。 同じことをやるのに複数の書き方があったりしますが、2つの書き方を並べてそれぞれどちらがどれだけかかったかという結果が記載されていて面白いです。 で、そのいくらかかったか?という秒数も、ページ上でリアルタイムに計算され、リロードすると実行され、実行タイムが表示されます。 サイトの作者環境による比較ではなく、その場で動いて何度も試せるので自分でその差を確認できるのがGood。 個人的には長年PHPをやっているのですが知らなかった物も多々あり、非常に勉強になりました。 1回のロードでは結果が変になることもあるので、サーバの負荷にならない程度に数回確認させてもら

  • Gree Fast Processor: PHPを3倍(くらい)速く | GREE Engineering

    ごあいさつエントリだけというのもなんなので、引き続きfujimotoです。実質上1つめのような気がするこのエントリでは、PHPが3倍くらい(少なくとも2倍くらいは...)速くなるGree Fast Processorというのを先月作ってみたのでご紹介です。 すぐわかるまとめ Gree Fast Processorというのを使ってみると、シンプルなsymfonyのプロジェクト(xav.ccで試しました)でも2倍弱、結構複雑なアプリケーションだと7倍くらい速くなったりします。いくつかの制約がありますが、パフォーマンスに飢えているかたはお試しください。 こちらはなんかすごい速くなっている感じのグラフ(一番上が速くなった版のRequests per Second、赤が通常版のRequests per Second): これはさすがにbest caseすぎる気がしますが、普通にやっても2倍弱くらいは

    Gree Fast Processor: PHPを3倍(くらい)速く | GREE Engineering
  • PHPでメモリ上に一時ファイルを作る - hnwの日記

    blog.plastik.jp » PHP5 の fgetcsv() で読み込み内容が腐る現象」という記事を読みました。fgetcsv()だとSJISのCSVファイルがうまく読めないので、UTF-8に直してテンポラリファイルに保存してfgetcsvで読み込む、という筋書きのようです。 ちゃんとtmpfile()を使っていたりしてナイスなコードだと思います。でも、すぐ不要になるデータをディスクに書き込むのはイマイチじゃないでしょうか。ここはメモリに書いた方がカッコいいと思うんです。僕なら下記のようにします。 <?php $data = file_get_contents("example.csv"); $data = mb_convert_encoding($data, "UTF-8", "Shift_JIS"); $fp = fopen('php://memory', 'r+'); fw

    PHPでメモリ上に一時ファイルを作る - hnwの日記
  • PHPコーディングに関する最適化TIPS 2009:phpspot開発日誌

    PHP micro-optimization tips | Alex @ Net PHPコーディングに関する最適化TIPS というのがまとまっていましたのでご紹介。 元記事では、micro-optimization ということで、これらを直すのももちろんだけど、ロジックを直す方がパフォーマンスは改善されるということを言ってるようです。 個人的な勉強がてら、メモとして残します。 ・__call のマジックメソッドを使うと遅い ・staticなメソッドはインスタンス化したオブジェクトのメソッドより速い ・関数呼び出しは、staticなメソッド呼び出しより高速 ・ローカル変数へのアクセスはグローバル変数へのアクセスより速い ・グローバル変数へのアクセスは、オブジェクトのプロパティより速い ・オブジェクトプロパティへのアクセスは、__get, __set を使うと遅い ・初期化された変数はそうでな

  • マッシュアップに必須!PHPで複数APIを同時に叩いて超高速化するサンプル:phpspot開発日誌

    phpied.com Blog Archive Simultaneuos HTTP requests in PHP with cURL The basic idea of a Web 2.0-style "mashup" is that you consume data from several services, often from different providers and combine them in interesting ways. マッシュアップに必須!PHPで複数APIを同時に叩いて超高速化するサンプル。 通常、PHPAPIにアクセスする場合、例えば、Yahoo!検索APIはてなブックマークのRSSを取得してマッシュアップする場合は次の図のようになります。 ただ、この方式だと、Yahoo!検索APIにリクエストし、その結果を待ちます。 そして、そこからはてなブック

  • 12のPHP最適化テクニック:phpspot開発日誌

    12 PHP optimization tips Ilia Alshanetsky’s PHP performance talk given last week at the Zend conference is pretty useful as far as getting small tips for tweaking PHP code. PHP最適化テクニックが紹介されていましたので以下にまとめてみました。 staticメソッドが使えるなら使おう。速度は4倍になる __get, __set, __autoload は使わない require_once は重い include, requireで読み込むファイルはフルパスにしよう スクリプト開始時のUNIXタイムを $_SERVER['REQUEST_TIME'] で取れる strncasecmp関数やstrpbrk関数を使えるケースは

  • ウノウラボ Unoh Labs: PHPで書かれたwebサービスを高速化する2

    前回のエントリPHPで書かれたwebサービスを高速化するでは高速化のレベルのうち、最初の2段階「ハードウェアによる高速化」「ソフトウェアによる高速化」について書きました。 今回は第2弾として「プログラムの工夫による高速化」について書きたいと思います。 - DBへのアクセスは自分で抽象化する DBへのアクセスを高速化するためには、チューニングを行ったり複数台構成にするわけですが、 広く使われているPear::DBとかadodbは複数台構成のDBに接続することを考慮されていません。 Pear::DBやadodbはバックエンドに使って、ラッパークラスを作るようにしましょう。 - 更新系クエリと読み出し系クエリのユーザを分ける これは高速化とは関係ないんですが、ぜひ実行してもらいたいので書きました。 複数台構成のサーバにアクセスするときは更新系クエリはマスターに発行して、 読み出し系クエ

  • 1