Yahoo! JAPAN Tech Blog 『APIとの通信効率をよくする実装例(1) curl_multi』において興味深い通信テクニックが紹介されている。PHP5以降を使ってWebアプリケーションやWebシステムを構築しているなら、そのまま処理速度の向上に直結する可能性を持ったテクニックだ。PHPプログラマは一度チェックしてみてほしい。
APIとの通信効率をよくする実装例(1) curl_multiで紹介されているのは、PHP5のcurl_multi_機能を使って並列通信を実現するというもの。実例としてfile_get_contents()を使って順次通信する場合と、curl_multi__()を使って並列通信を実現する場合のコードが掲載されている。短く簡潔でわかりやすい。複数のWebサービスを活用している場合に使えるテクニックだ。
すべての通信を並列化する方法は問題がある。すべてを並列通信にすれば処理がそれだけ高速になるというものではない。しかしすべて直列に通信をする方法にも無駄が多い。適当な数を並列に通信させることで、全体として効率の良い処理を実現できる。『APIとの通信効率をよくする実装例(1) curl_multi』で紹介されているテクニックはわかりやすく効果的だ。