isucon2015 phpで予選を戦ってみた

52
Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved. ISUCON2015 PHPで予選を戦ってみた 株式会社サイバード 後藤 健 #phpcon2015

Upload: ken-gotoh

Post on 18-Feb-2017

2.728 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: ISUCON2015 PHPで予選を戦ってみた

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

ISUCON2015 PHPで予選を戦ってみた

株式会社サイバード 後藤 健

#phpcon2015

Page 2: ISUCON2015 PHPで予選を戦ってみた

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

ISUCON2015 PHPで予選を戦って

俺の力量不足で惨敗してきた株式会社サイバード

後藤 健

#phpcon2015

Page 3: ISUCON2015 PHPで予選を戦ってみた

お決まり

Page 4: ISUCON2015 PHPで予選を戦ってみた

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

http://www.cybird.co.jp/recruit/

エントリーしてね!

エンジニア募集中!

Page 5: ISUCON2015 PHPで予選を戦ってみた

大事だからもう一度

Page 6: ISUCON2015 PHPで予選を戦ってみた

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

http://www.cybird.co.jp/recruit/

エントリーしてね!

エンジニア募集中!

Page 7: ISUCON2015 PHPで予選を戦ってみた

Copyright 2014 CYBIRD Co., Ltd. All Rights Reserved.

http://www.cybird.co.jp/recruit/

エントリーしてね!

エンジニア募集中!

切実

Page 8: ISUCON2015 PHPで予選を戦ってみた

後藤 健(ごとう けん)

• インフラ、ミドルウェアまわり

• 新卒3年目

• 京都人

• Twitter : gotyoooo

• LTトリとか緊張

Page 9: ISUCON2015 PHPで予選を戦ってみた

ISUCON ?

Page 10: ISUCON2015 PHPで予選を戦ってみた

知ってる人?

Page 11: ISUCON2015 PHPで予選を戦ってみた

ちなみに出た方 ?

Page 12: ISUCON2015 PHPで予選を戦ってみた

予選突破した方 ?

Page 13: ISUCON2015 PHPで予選を戦ってみた

Iikanjini Speed Up Contest

Page 14: ISUCON2015 PHPで予選を戦ってみた

予選2日間合計 236組 761名

(※主催者発表)

Page 15: ISUCON2015 PHPで予選を戦ってみた

利用言語比率• Ruby   43.2% 67組

• Python  15.5% 24組

• Golang  14.2% 22組

• Perl    14.2% 22組

• PHP    12.9% 20組

• Java    2.6%  4組

• Common Lisp 0.6% 1組

Page 16: ISUCON2015 PHPで予選を戦ってみた

本選出場• Ruby   37.0% 10組

• Perl   25.9%  7組

• Golang  22.2%  6組

• Python  11.1%  3組

• PHP    3.7%  1組

• 未回答   7.4%  2組

Page 17: ISUCON2015 PHPで予選を戦ってみた

すげぇ!

Page 18: ISUCON2015 PHPで予選を戦ってみた

一言でいうと

Page 19: ISUCON2015 PHPで予選を戦ってみた

世の中のエンジニアが 課題のWEBサービスを

高速化させるのを競うやつ

Page 20: ISUCON2015 PHPで予選を戦ってみた

ISUCONにおける速さ =

ベンチマークによるスコア

Page 21: ISUCON2015 PHPで予選を戦ってみた

高速化…だと?

Page 22: ISUCON2015 PHPで予選を戦ってみた
Page 23: ISUCON2015 PHPで予選を戦ってみた
Page 24: ISUCON2015 PHPで予選を戦ってみた

I LOVE PHP !

Page 25: ISUCON2015 PHPで予選を戦ってみた

やるしかねぇ!

Page 26: ISUCON2015 PHPで予選を戦ってみた

当日…

Page 27: ISUCON2015 PHPで予選を戦ってみた

“Node.jsの実装はなくなりました”

Page 28: ISUCON2015 PHPで予選を戦ってみた

m9(^Д^)

Page 29: ISUCON2015 PHPで予選を戦ってみた

“またPHPについては、実装を用意したものの整備が十分でなく、ベンチマークが期待する動作をせず、現時点で参加時の使用に耐えません。”

Page 30: ISUCON2015 PHPで予選を戦ってみた

m9(^Д^) -> 俺

Page 31: ISUCON2015 PHPで予選を戦ってみた

orz

Page 32: ISUCON2015 PHPで予選を戦ってみた

undefined index

Page 33: ISUCON2015 PHPで予選を戦ってみた

isset() 入ってない

Page 34: ISUCON2015 PHPで予選を戦ってみた

I LOVE PHP !!

Page 35: ISUCON2015 PHPで予選を戦ってみた

初期実装スコア(PHP) : 414

Page 36: ISUCON2015 PHPで予選を戦ってみた

お題は・・・

Page 37: ISUCON2015 PHPで予選を戦ってみた
Page 38: ISUCON2015 PHPで予選を戦ってみた

データ量多め

Page 39: ISUCON2015 PHPで予選を戦ってみた

芳しいSQL一杯

Page 40: ISUCON2015 PHPで予選を戦ってみた

phpcon2014 LT

Page 41: ISUCON2015 PHPで予選を戦ってみた

あとはよくある手を使っただけ (秘伝のタレ, Nginx静的ページキャッシュ)

Page 42: ISUCON2015 PHPで予選を戦ってみた

最終スコア(PHP) : 11,339 ※予選突破ライン : 13,898

Page 43: ISUCON2015 PHPで予選を戦ってみた

(再掲) orz

Page 44: ISUCON2015 PHPで予選を戦ってみた

よかったこと

Page 45: ISUCON2015 PHPで予選を戦ってみた

PHP 7.0.0 RC3 : 11,339 PHP 5.6.13 : 8,638

Page 46: ISUCON2015 PHPで予選を戦ってみた

PHP 7.0.0 RC3 : 11,339 PHP 5.6.13 : 8,638

配列操作まわりが 効いた気がする

Page 47: ISUCON2015 PHPで予選を戦ってみた
Page 48: ISUCON2015 PHPで予選を戦ってみた

7 すげぇぇぇ

Page 49: ISUCON2015 PHPで予選を戦ってみた

RC4 出たから みんな使おうぜ!

Page 50: ISUCON2015 PHPで予選を戦ってみた

PHPは凄い 俺の力量不足

Page 51: ISUCON2015 PHPで予選を戦ってみた

I LOVE PHP !!! 来年こそ…

Page 52: ISUCON2015 PHPで予選を戦ってみた

ありがとうございました!

詳細は↓ http://gotyoooo.hatenablog.com/