[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
SlideShare a Scribd company logo
PHPデプロイツールの世界
2015/10/03 PHPカンファンレンス2015
yuuki takezawa / istyle inc
Deploy?
• ソースコードを本番環境などに設置
• ディレクトリなどに実行権限を与える
• キャッシュの削除
• 業務ルールに則った手順など
デプロイ作業
• FTPによる手動アップロード
• リモートサーバ内のファイルを手動で削除
• rsyncなどによるアップロード
デプロイ方法
PEAR -> Composer
ライブラリなどは
プロジェクト毎の管理へ変化
進化するフロントエンド
Grunt, Gulp
etc…
様々な手順が自動化
• Composer、npm、bowerなどによる

依存ライブラリ管理
• フロントエンドタスクツール
• 継続的インテグレーションによる自動テスト
• 自動化によるヒューマンエラー防止
変わったもの
デプロイも自動化
Develop
Testing
Push
Testing
PHPUnit
phpspec
Behat
Codeception
Deploy Server
staging
production
etc
auto
• ライブラリのインストール
• フロントエンドタスク実行
• 複数のリモートサーバへ接続
• ローカルタスクの実行(rsyncなど)
デプロイツール
Capistrano (Ruby)
Fabric (Python)
PHPに統一したい
難しい
etc…
PHP Deploy Tool
• Capistranoのようなデプロイツール

Magallanes、Altax、Rocketeer、Deployer
• リモートサーバタスクツール

Robo、Envoy
PHP Deploy Tool / Task Tool
• 良質なコンポーネント

Symfony Component、

The League of Extraordinary Packages etc…
• 自由に組み合わせてツール、ライブラリ開発
• PHP-FIG
Background
これらを元に作られる
デプロイツールの世界
• コマンドを実行して構築される世界
• 対話型
• 処理の並列化
• 非同期処理
コンソールアプリケーション
3つのツール
• Envoy 

(http://laravel.com/docs/5.1/envoy)
• Deployer 

(http://deployer.org/)
• Rocketeer 

(http://rocketeer.autopergamene.eu/)
Envoy
• リモートサーバタスクツール
• リモートサーバで実行するコマンドを記述
• Laravelのマニュアルに記述されていますが、

親和性はありません
• デフォルトで利用できるタスクは用意されていないため、

利用するタスクを記述します
• 並列実行をサポート
Deployer
• リモートサーバタスクツール
• リモートサーバで実行するコマンドを記述
• PHPの主なフレームワークに対応したタスクが

あらかじめ用意されています
• PHPに親しんでいる方であれば簡単に利用できます
• 足りないタスクは自由に追加できます
Rocketeer
• Capistranoスタイルで高機能
• デプロイタスクが用意されています
• composerやnpmコマンドなどデフォルトで対応
• Laravelのパッケージとしても利用されるため

サービスロケータを多用しているため、少し複雑
• Capistranoのようにある程度学習する必要が有ります
Task実行までのアプローチ
• タスクを記述したファイルを

コンパイル(通常のPHPコードへ変換)
• タスク毎にリモートサーバへ
• symfony/processによる接続
• コマンドを実行
Envoyのアプローチ
Console boot
Envoy.blade.php
Compile
Envoy.php (array)
connect
Task
• タスクを記述したファイルを読み込む
• タスク毎にリモートサーバへ接続
• phpseclib/phpseclibによる接続
• コールバックでコマンドを実行
Deployerのアプローチ
Console boot
deploy.php(default)
collection
connect
Task
• サービスをコンテナへ登録し、

タスクを記述したファイルを読み込む
• サービスロケータを介して、

タスク毎にリモートサーバへ接続
• phpseclib/phpseclibによる接続
• コマンドを実行
• 複雑
Rocketeerのアプローチ
Console boot
Service Register
connect
Task Queue
Tasks
Configure
Task
Parallel / 並列のアプローチ
• symfony/processによるproc_open
• それぞれのプロセスがタスク実行
• それ以外は通常の実行と全く同じ
• シンプルな並列処理
Envoyの並列アプローチ
Command
process
connect
Task
process
connect
Task
• ReactPHPを利用した非同期
• proc_openを利用し、

各プロセスがタスクを実行
• socketsエクステンションが必須
• elfet/pure(PHP製Key Value Storage)
Deployerの並列アプローチ
Command
process
connect
Task
process
connect
Task
ReactPHP
Task
• pcntl_forkによるプロセスのフォーク
• 各プロセスがタスクを実行
• pcntlエクステンションが必須
Rocketeerの並列アプローチ
Taskのアプローチ
• 記述したタスクのみを実行
• タスクの前後に処理を行うなどの

仕組みはない
• ローカルタスクはタスクごとに記述
Envoyのタスク
• タスク前後の処理は簡単に記述
• Rocketeerはローカルタスクはタスクごとに
• Deployerはローカルタスクをリモートタスク
内で実行可能
Deployer,Rocketeerのタスク
同じコンポーネントを
利用しながらも、
アプローチはそれぞれ

異なります
• プロジェクトや運用ルールに合致するものを利
用する
• 並列で利用する場合は、依存ライブラリや、

エクステンションを調べる
• 独自タスクの追加方法や、メンテナンスなど
• オリジナルのデプロイツールを開発しても良い
ツールを知ること

More Related Content

What's hot (20)

Azure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロAzure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロ
Kazuyuki Miyake
 
WkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べたWkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べた
firewood
 
Multicastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃないMulticastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃない
Kenta Yasukawa
 
JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)
JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)
JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)
Amazon Web Services Japan
 
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
Google Cloud Platform - Japan
 
5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ
CLARA, Inc.
 
Guide To AGPL
Guide To AGPLGuide To AGPL
Guide To AGPL
Mikiya Okuno
 
よろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAA
よろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAAよろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAA
よろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAA
Kazuhito Miura
 
nginxの紹介
nginxの紹介nginxの紹介
nginxの紹介
Takashi Takizawa
 
Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解
Masahito Zembutsu
 
マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞
DMM.com
 
PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題
NTT DATA OSS Professional Services
 
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
TIS Inc.
 
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
Masahito Zembutsu
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Kazumi IWANAGA
 
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニングJVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
佑哉 廣岡
 
Maven基礎
Maven基礎Maven基礎
Maven基礎
Toshio Takiguchi
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
 
噛み砕いてKafka Streams #kafkajp
噛み砕いてKafka Streams #kafkajp噛み砕いてKafka Streams #kafkajp
噛み砕いてKafka Streams #kafkajp
Yahoo!デベロッパーネットワーク
 
Azure Search 大全
Azure Search 大全Azure Search 大全
Azure Search 大全
Daiyu Hatakeyama
 
Azure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロAzure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロ
Kazuyuki Miyake
 
WkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べたWkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べた
firewood
 
Multicastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃないMulticastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃない
Kenta Yasukawa
 
JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)
JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)
JAWS-UG 情シス支部の皆様向け Amazon Elastic File System (Amazon EFS)
Amazon Web Services Japan
 
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
Google Cloud Platform - Japan
 
5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ
CLARA, Inc.
 
よろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAA
よろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAAよろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAA
よろしい、ならば自動化だっ! ~自動家の自動化哲学~ #AsianAA
Kazuhito Miura
 
Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解
Masahito Zembutsu
 
マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞
DMM.com
 
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
TIS Inc.
 
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
Masahito Zembutsu
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Kazumi IWANAGA
 
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニングJVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
佑哉 廣岡
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
 

Similar to PHPデプロイツールの世界 (20)

Re: WebServer BenchMarking
Re: WebServer BenchMarkingRe: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
 
密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境
Fumihito Yokoyama
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplib
Shinya Okano
 
オフラインファーストの思想と実践
オフラインファーストの思想と実践オフラインファーストの思想と実践
オフラインファーストの思想と実践
Shumpei Shiraishi
 
コンテナーによるIT基盤変革 - IT infrastructure transformation -
コンテナーによるIT基盤変革 - IT infrastructure transformation -コンテナーによるIT基盤変革 - IT infrastructure transformation -
コンテナーによるIT基盤変革 - IT infrastructure transformation -
日本ヒューレット・パッカード株式会社
 
たのしいNode.js
たのしいNode.jsたのしいNode.js
たのしいNode.js
ishiki-takai
 
PHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作ったPHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作った
Hironobu Saitoh
 
誰でも出来るosxでのローカルなウェブ開発環境構築
誰でも出来るosxでのローカルなウェブ開発環境構築誰でも出来るosxでのローカルなウェブ開発環境構築
誰でも出来るosxでのローカルなウェブ開発環境構築
Hiroshi Yamato
 
SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理
ina job
 
スクリプト言語PHP攻略法
スクリプト言語PHP攻略法スクリプト言語PHP攻略法
スクリプト言語PHP攻略法
Rui Hirokawa
 
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
Ryuji Yamashita
 
behatエクステンションの作り方
behatエクステンションの作り方behatエクステンションの作り方
behatエクステンションの作り方
Ryo Tomidokoro
 
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバーPHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
Atsushi Matsuo
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
npsg
 
IT Pro のための PowerShell スクリプティング
IT Pro のための PowerShell スクリプティングIT Pro のための PowerShell スクリプティング
IT Pro のための PowerShell スクリプティング
Kazuki Takai
 
5分でわかる静的解析入門
5分でわかる静的解析入門5分でわかる静的解析入門
5分でわかる静的解析入門
Kenta USAMI
 
ComSys 2012 Yabusame Talk
ComSys 2012 Yabusame TalkComSys 2012 Yabusame Talk
ComSys 2012 Yabusame Talk
Takahiro Hirofuchi
 
Re: WebServer BenchMarking
Re: WebServer BenchMarkingRe: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
 
密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境
Fumihito Yokoyama
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplib
Shinya Okano
 
オフラインファーストの思想と実践
オフラインファーストの思想と実践オフラインファーストの思想と実践
オフラインファーストの思想と実践
Shumpei Shiraishi
 
たのしいNode.js
たのしいNode.jsたのしいNode.js
たのしいNode.js
ishiki-takai
 
PHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作ったPHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作った
Hironobu Saitoh
 
誰でも出来るosxでのローカルなウェブ開発環境構築
誰でも出来るosxでのローカルなウェブ開発環境構築誰でも出来るosxでのローカルなウェブ開発環境構築
誰でも出来るosxでのローカルなウェブ開発環境構築
Hiroshi Yamato
 
SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理
ina job
 
スクリプト言語PHP攻略法
スクリプト言語PHP攻略法スクリプト言語PHP攻略法
スクリプト言語PHP攻略法
Rui Hirokawa
 
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
Ryuji Yamashita
 
behatエクステンションの作り方
behatエクステンションの作り方behatエクステンションの作り方
behatエクステンションの作り方
Ryo Tomidokoro
 
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバーPHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
Atsushi Matsuo
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
npsg
 
IT Pro のための PowerShell スクリプティング
IT Pro のための PowerShell スクリプティングIT Pro のための PowerShell スクリプティング
IT Pro のための PowerShell スクリプティング
Kazuki Takai
 
5分でわかる静的解析入門
5分でわかる静的解析入門5分でわかる静的解析入門
5分でわかる静的解析入門
Kenta USAMI
 

More from Yuuki Takezawa (11)

zend-expressiveを触ってみよう
zend-expressiveを触ってみようzend-expressiveを触ってみよう
zend-expressiveを触ってみよう
Yuuki Takezawa
 
LaravelとMVCの先へ
LaravelとMVCの先へLaravelとMVCの先へ
LaravelとMVCの先へ
Yuuki Takezawa
 
phpspecで始めるBDD
phpspecで始めるBDDphpspecで始めるBDD
phpspecで始めるBDD
Yuuki Takezawa
 
Laravel5.1 Release
Laravel5.1 ReleaseLaravel5.1 Release
Laravel5.1 Release
Yuuki Takezawa
 
Laravel / Lumen 次の一歩
Laravel / Lumen 次の一歩Laravel / Lumen 次の一歩
Laravel / Lumen 次の一歩
Yuuki Takezawa
 
php開発で使うタスクランナー gulp
php開発で使うタスクランナー gulpphp開発で使うタスクランナー gulp
php開発で使うタスクランナー gulp
Yuuki Takezawa
 
PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014
Yuuki Takezawa
 
PHP&NewSQLで考える次世代アプリケーション
PHP&NewSQLで考える次世代アプリケーションPHP&NewSQLで考える次世代アプリケーション
PHP&NewSQLで考える次世代アプリケーション
Yuuki Takezawa
 
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Yuuki Takezawa
 
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Laravel_オープンソースカンファレンスhokkaido_JP_2014Laravel_オープンソースカンファレンスhokkaido_JP_2014
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Yuuki Takezawa
 
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
laravel websocket(use redis pubsub) [Laravel meetup tokyo]laravel websocket(use redis pubsub) [Laravel meetup tokyo]
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
Yuuki Takezawa
 
zend-expressiveを触ってみよう
zend-expressiveを触ってみようzend-expressiveを触ってみよう
zend-expressiveを触ってみよう
Yuuki Takezawa
 
LaravelとMVCの先へ
LaravelとMVCの先へLaravelとMVCの先へ
LaravelとMVCの先へ
Yuuki Takezawa
 
phpspecで始めるBDD
phpspecで始めるBDDphpspecで始めるBDD
phpspecで始めるBDD
Yuuki Takezawa
 
Laravel / Lumen 次の一歩
Laravel / Lumen 次の一歩Laravel / Lumen 次の一歩
Laravel / Lumen 次の一歩
Yuuki Takezawa
 
php開発で使うタスクランナー gulp
php開発で使うタスクランナー gulpphp開発で使うタスクランナー gulp
php開発で使うタスクランナー gulp
Yuuki Takezawa
 
PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014
Yuuki Takezawa
 
PHP&NewSQLで考える次世代アプリケーション
PHP&NewSQLで考える次世代アプリケーションPHP&NewSQLで考える次世代アプリケーション
PHP&NewSQLで考える次世代アプリケーション
Yuuki Takezawa
 
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Yuuki Takezawa
 
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Laravel_オープンソースカンファレンスhokkaido_JP_2014Laravel_オープンソースカンファレンスhokkaido_JP_2014
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Yuuki Takezawa
 
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
laravel websocket(use redis pubsub) [Laravel meetup tokyo]laravel websocket(use redis pubsub) [Laravel meetup tokyo]
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
Yuuki Takezawa
 

PHPデプロイツールの世界