Upgrade to Pro — share decks privately, control downloads, hide ads and more …

pixivにおけるHHVMとPHP7 と、高速化事例紹介

pixivにおけるHHVMとPHP7 と、高速化事例紹介

PHP7 Casual Talks #2で発表した内容です。

Atsushi Takayama

April 15, 2016
Tweet

More Decks by Atsushi Takayama

Other Decks in Technology

Transcript

  1. ࣗݾ঺հ • ߴࢁ Թ @edvakf • ϐΫγϒͰ͸ϦʔυΤϯδχΞ • pixivͷອըࣄۀͷ։ൃ੹೚ऀ •

    ձࣾͷٕज़બ୒Λԁ׈ʹਐΊΔͨΊͷମ੍ͮ͘Γ • Α͘ॻ͘ݴޠ͸PHP, Ruby, Go, Scala, JavaScript • ʮࣾ಺ͷΤϯδχΞ͕޾ͤʹಇͨ͘Ίʹ͸ʯΛߟ࣮͑ݱ͢Δۀ
  2. pixiv.git www.pixiv.net ͱෳ਺ͷؔ࿈αʔϏεΛؚΉڊେϦϙδτϦ find . -name '*.php' | xargs cat

    | wc -l 69ສߦ ϑΝʔετίϛοτ͸2007೥9݄ PHP5.2 → 5.3 → 5.5ͱมભ ίʔυϕʔεશମʹؔΘΔϦϑΝΫλϦϯάΛز౓΋ܦݧ
  3. ͜Ε·Ͱͷ੒Ռ mysql_* ؔ਺ͷഇࢭ ਺ઍՕॴΛ̍೔ͰPDOʹஔ׵ pecl solrͷഇࢭ file_get_contentsͰHTTPϦΫΤετԽ ࠷ۙʹͳͬͯPHP7ରԠ͕׆ൃʹ ςετΛtimecopඇґଘʹ ͜Ε΋࠷ۙʹͳͬͯhnw͞Μ͕ରԠ

    ΛਐΊ͍ͯΔ php7ccͰҾ͔͔ͬΔՕॴͷमਖ਼ runkitʹґଘ͍ͯͨ͠ςετΛrunkit7ʹ runkitͷ͏ͪ1ؔ਺͔͠࢖͍ͬͯͳ͔ͬͨ memcacheϞδϡʔϧΛmemcachedϞ δϡʔϧʹஔ͖׵͑ ෭࣍ޮՌͱͯ͠ɺE_STRICTΛࠓ·Ͱ͸ແࢹ ͍͕ͯͨ͠ɺ͢΂ͯͭͿͯ͠ΊͰͨ͘Τϥʔ ϨϕϧΛ্͛Δ͜ͱ͕Ͱ͖ͨ ͞Βʹ෭࣍ޮՌͰશ໘తʹautoloaderΛಋೖ