Skip to content

Instantly share code, notes, and snippets.

@iZRIdJJ53S
Last active December 23, 2015 06:49
Show Gist options
  • Save iZRIdJJ53S/6596424 to your computer and use it in GitHub Desktop.
Save iZRIdJJ53S/6596424 to your computer and use it in GitHub Desktop.
PHPカンファレンス2013に行ってきたので、簡単にまとめました。

PHPカンファレンス2013まとめ

基調講演 PHPの今とこれから2013

廣川 類・日本PHPユーザ会 http://es.slideshare.net/hirokawa/php-con2013ub

Webにフォーカスしたスクリプト言語として成功したPHPは常に進化し続けています。ポストPHP 5.3時代の開発、PHP 5.5における機能強化点を中心に、PHP 5.6に向けた展望とPHPコミュニティの今についてお話します。


inside pixiv's infrastructure

ピクシブ株式会社 久保達彦 http://www.slideshare.net/cubicdaiya/inside-pixiv-infrastructure

イラストコミュニケーションサービスであるpixivのシステムの裏側についてPHPの活用事例を交えながら紹介します。
  • 800万会員
  • 38億PV/月
  • ネットワーク帯域10Gbps
  • サーバー400台
  • エンジニア30人(インフラ5人)
  • ソースコード30万行
  • redmineでタスク管理
  • phpunitテストスイート

他言語との連携。やっぱりapi(json) xhprofでボトルネック調査

  • tatesetaというフレームワーク
  • api専用の軽量フレームワーク。ルーティングだけする

requireは最小限に抑える


ミッションクリティカル&ハイパフォーマンスシステムにおける技術統合と運用の勘所

こしば としあき(株式会社VOYAGE GROUP アジャイル戦略室 / 株式会社Zucks アドネットワーク事業部) https://speakerdeck.com/bash0c7/phpconference2013presentation-number-phpcon2013

わたしたちは、スマートフォン向けクリック課金型アドネットワーク「Zucks Ad Network」とこの事業の広告配信システムの開発運用を担っています。
この広告配信システムというミッションクリティカルかつハイパフォーマンスが要求されるシステムの開発・運用を通じて会得した技術的・チーム的な知見をお話します。 このセッションでは、事業や技術の第一線で踏ん張るPHPカンファレンス参加のみなさんに、下記の大きな事柄についての理想像を持ち帰っていただけます。
1. このようなシステムでPHPがはどのような部分で活躍するのか
2. PHPを含めて様々な技術要素を統合した"システム"として成り立たせるためには何が必要か
  • インフラ ほぼaws dnsとcdnはよそ。鉄板の富豪構成パターン

  • アプリケーション テストコード完備 プルリクエスト運用 ci 継続的インテグレーション ワンクリックデプロイ zgokコマンド(start|update|stop)

  • リアルタイム、高パフォーマンス、リトライ、リカバリーを担保する仕組み

1リクエスト受ける 2レス返す 3ログ書く 4ログを読んでdbに書き込む fluentd で担保してる

自分で検討して、動かして測定して評価する事が大事。



今ドキのPHPの書き方〜PHP逆引きレシピ改訂版〜

PHP逆引きレシピ 改訂版 執筆チーム http://www.slideshare.net/sakuraiyuta/php2013-php-php

好評を博している「PHP逆引きレシピ」の改訂版が10月に発売される予定です。 「初級者から中級者へ」を合言葉に、オブジェクト指向の基本やPHPUnitとSeleniumでの自動テスト、最新のライブラリ管理パッケージComposerについて新しく触れています。 改訂ポイントなどをまとめてご紹介します!

オブジェクト指向が当たり前 pearからcomposerへ変化。パッケージマネージャー ※正確にはcomposerは依存管理

PDO bindvalue,bindparam の違い。エミュレーションonだと型変換。 bindparamの第2引数は参照渡し。 全部bindvalueでいいんじゃないかな。

phpunit selenium ブラウザの挙動もphpで書ける



本当に怖いパフォーマンスが悪い実装

Masakazu Nagaya / Yahoo!JAPAN http://www.slideshare.net/techblogyahoo/phpcon2013-performance

大規模サイトでパフォーマンスを著しく劣化させる非効率な実装の例やその改善例の一部を紹介します。 今回の発表では、特にシステムコールを数を減らすことがパフォーマンス改善の重要なポイントだと認識頂くことをゴールとしております。
  • オープンするしょりをコンストラクタで呼ぶ。 openの処理コスト高い

  • リクエスト毎に毎回opencloseするのはもったいない。 openをpopen 永続化

  • 大量のdefine問題 defineは処理コストが大きい。リクエスト毎に毎回実行される エクステンションで改善した hidef peclを活用 iniファイルから定数を一括定義する

  • プロセスの生成コストは非常に大きい 外部コマンドは絶対に使わない。 dmmでも書かれてる。 http://tsuchinoko.dmmlabs.com/?p=698


PHP 5.5ネーティブキャッシュの話

廣川 類・日本PHPユーザ会 http://www.slideshare.net/hirokawa/php-55-26227359

PHP 5.5ではついにキャッシュが標準搭載されました。その特徴、設定のポイントと注意点、ベンチマークの紹介、データキャシュ機能用エキステンションの使用法について解説します。

phpの新しいバージョンの方が、キャッシュ効果あり。最適化されてる。 キャッシュ管理コンソール opcache-status github 公式採用なので、今後はこれopcache使う方がいいよ。バグとかすぐに直してくれるし。


フロントエンド制作向けビルドツールGruntをPHPバックエンド開発で利用する

石川将行 http://www.slideshare.net/mishikawa55/2013-phpcon

フロントエンドエンジニア御用達ツールGrunt。 node.js製のビルドツールで、最近のクリエイティブ、制作系エンジニアにとっては必須のツールといわれています。 そんな便利なものをフロントエンド開発だけで使うなんてもったいない! PHPバックエンドエンジニア開発での利用事例、PHP関連プラグインの紹介を含めGruntの基礎、プロジェクトへの導入、Gruntプラグイン開発、公開(npm登録)までを紹介します。

開発環境へnode、gruntを導入

使い所:ソースを監視してユニットテストを走らせる

phpの構文チェック、コーディング規約チェック


Let's mashup !! アイデアとWebAPIで大ヒットサイトを構築しよう

阿部正幸・KDDIウェブコミュニケーションズ

無料、有料問わず数百種類あるWebAPI。このWebAPIを使うことにより、個人でも強力なWebサービスを構築することが出来ます。アイデア次第で大ヒットWebサイトの構築も夢じゃありません!! このセッションは最新WebAPIの紹介と、面白系APIの紹介、そしてWebAPI + PHPを使ってシステム構築の簡単な例をご紹介します。

ゼンリンデータコム 混雑状況、がリアルタイムに表示。dbに保存しとくと混雑状況が予想できる。混雑度map エリアの人気ワード

駅データ.jp


PHPアプリケーションの継続的バージョンアップ

栗林健太郎 (株式会社paperboy&co.) https://speakerdeck.com/kentaro/how-to-continuously-upgrade-web-services-written-in-php

Webサービスは、いちどリリースしてしまえばそれで終わりということはありません。むしろ、リリースしてからが勝負です。ユーザからのフィードバック、市場環境の変化などに対応し、常に変化し続ける必要があります。それは避けようのない、Webサービスの宿命です。
  • ぺちぺ・ぺちばーの創始者はあんちぽさん。

  • 放置すると、古い書き方。セキュリティやばい。 レガシーコードの増加。イノベーションのジレンマ

  • バージョンアップは継続的に行う事が当たり前なので、体制必須。 環境は常に変化し続ける。

  • 必要なもの サーバーの構成管理。puppet,chef,ansibleとかね

いきなり全部を管理下におこうとしない。 できるとこから少しずつ。

簡単な設定ファイルから本番からコピーしてくる。 リポジトリにコミットする。

  • 開発環境で育てる 壊れても一発で作れるように。

  • composer ライブラリ管理はアプリ側の責任 サーバ側の依存はマニフェストで管理

  • 結局は泣きながら直す。changes(log)見ながら

ペパボは php-fpmへ移行してきている apacheとの密結合をやめる

  • xbuild をgit clone してphp-installするだけ。

PHPコアから読み解く定石の嘘ホント

ヤフー株式会社 蒋東龍 http://www.slideshare.net/techblogyahoo/phpcon2013-true-orfalse

PHPコーディングの定石について説明する。 今まで何となくよい(悪い)と思って書いていたPHPのコードが  本当によいのか  本当に悪いのか を解説。 実際の計測することによって裏付けを取ると同時に、PHPコアから読み解くことによって論理的に説明する。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment