Slide 1

Slide 1 text

僕の辿りついた最強のPHP開発環境 あえてのWindows。 2017.7.15 PHPカンファレンス関西

Slide 2

Slide 2 text

本日の流れ なんで Windows? カスタマイズ してみよう 最強の PHP 開発環境

Slide 3

Slide 3 text

遠藤 良 ryo-endo 株式会社ロックオンでEC-CUBEやってます。 組込み→Windowsアプリ→Webアプリで1年半。 はじめて利用したパソコンはWindows95 (PC-9821)。 はじめてのプログラミング言語はHSP。 はじめまして : )

Slide 4

Slide 4 text

本日お話することの前提 ◉ Windowsの話。 ◉ ローカル開発環境について。 ◉ あくまで僕が試行錯誤した結果。

Slide 5

Slide 5 text

Why Windows !? なんで?

Slide 6

Slide 6 text

Web業界での Windowsとmacのイメージ ※個人の主観です mac windows

Slide 7

Slide 7 text

Windowsで戦う PHPエンジニアよ 胸を張れ

Slide 8

Slide 8 text

そんな僕が考えた、 最強のPHP開発環境。

Slide 9

Slide 9 text

ローカル環境に求める条件 ◉ 速い ◉ 環境の切替えが簡単 ◉ なんかイマドキっぽい

Slide 10

Slide 10 text

使ってきたツールたち Diagram featured by http://slidemodel.com XAMPP PHP Builtin Web Server Cloud9 Virtual Box vagrant docker VSCode Web Matrix

Slide 11

Slide 11 text

僕の考えた最強のPHP開発環境 php-apache postgres mailcatcher sftp PHP 22 80 docker-machine

Slide 12

Slide 12 text

僕の考えた最強のPHP開発環境 php-apache postgres mailcatcher sftp PHP 80 docker-machine PhpStorm Remote deploy

Slide 13

Slide 13 text

以前の環境 php-apache postgres mailcatcher PHP 80 docker-machine マウント

Slide 14

Slide 14 text

以前の環境 php-apache postgres mailcatcher PHP 80 docker-machine マウント VirtualBox 共有フォルダ 遅い

Slide 15

Slide 15 text

Time per request 比較 サーバーの場所 DBの場所 ファイル共有 Time/Request Windows (xampp) Windows - 1033ms Windows (xampp) docker - 684ms docker docker あり 4760ms ←DBが遅い ←DB速くなった ←ファイル共有 が遅い ※EC-CUBE3.0 商品点数2000件 全商品検索をapache benchで計測

Slide 16

Slide 16 text

僕の考えた最強のPHP開発環境 php-apache postgres mailcatcher sftp PHP 80 docker-machine PhpStorm Remote deploy

Slide 17

Slide 17 text

Time per request 比較 サーバーの場所 DBの場所 ファイル共有 Time/Request Windows (xampp) Windows - 1033ms Windows (xampp) docker - 684ms docker docker あり 4760ms docker docker なし 464ms ←ファイル共有   利用しない ※EC-CUBE3.0 商品点数2000件 全商品検索をapache benchで計測

Slide 18

Slide 18 text

ローカル環境に求める条件 ◉ 速い  → コンテナに閉じて実行 ◉ 環境の切替えが簡単   → コンテナ切り替え ◉ なんかイマドキっぽい → docker

Slide 19

Slide 19 text

え?これが最強...!?  

Slide 20

Slide 20 text

なにが最強かは人それぞれ サーバ環境と 一致していない! PHP勉強したい だけなのに... とにかく 動けばいいや

Slide 21

Slide 21 text

なにが最強かは人それぞれ PHP エンジニア サイト 運営者 PHP 初心者 サーバ環境と 一致していない! PHP勉強したい だけなのに... とにかく 動けばいいや

Slide 22

Slide 22 text

僕の環境がF1マシンだとしたら

Slide 23

Slide 23 text

ちょっとスーパーに行きたい...

Slide 24

Slide 24 text

ラジコン大会に出たい...

Slide 25

Slide 25 text

リロードに時間を使っていられるほど 人生は長くない。 (というか、そもそも早く帰りたい)

Slide 26

Slide 26 text

どうぞ叩き台にしてください!  

Slide 27

Slide 27 text

叩き台の環境 php-apache postgres mailcatcher sftp PHP 22 80 docker-machine RemoteDeploy

Slide 28

Slide 28 text

ファイル共有を変えてみる php-apache postgres mailcatcher samba PHP 80 docker-machine ファイルサーバー

Slide 29

Slide 29 text

ファイル共有を変えてみる CentOS PHP 80 VirtualBox vagrant rsync /vagrant

Slide 30

Slide 30 text

ファイル共有をやめてみる postgres mailcatcher PHP 80 docker-machine builtin web-server

Slide 31

Slide 31 text

簡易DBにしちゃう SQLite PHP 80 builtin web-server

Slide 32

Slide 32 text

いっそのこと

Slide 33

Slide 33 text

“ みなさんにとっての 最強のPHP開発環境のヒントは見つかったでしょうか?

Slide 34

Slide 34 text

大好きな Windowsで 戦っていこう!

Slide 35

Slide 35 text

株式会社ロックオンでは、 エンジニアを募集しています! もちろん macで開発もOK。   株式会社ロックオン 採用 で検索

Slide 36

Slide 36 text

続きは懇親会で! みなさんの最強の開発環境を教えてください Thanks!