Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
KLab株式会社
11,156 views
KLab Social Game Platform ~Symfony1.4活用事例~
2010年4月16日の開催された「KAYAC×KLab合同勉強会」のKLabセッションです。
Technology
◦
Read more
4
Save
Share
Embed
Embed presentation
Download
Downloaded 47 times
1
/ 26
2
/ 26
3
/ 26
4
/ 26
5
/ 26
6
/ 26
7
/ 26
8
/ 26
9
/ 26
10
/ 26
11
/ 26
12
/ 26
13
/ 26
14
/ 26
15
/ 26
16
/ 26
17
/ 26
18
/ 26
19
/ 26
20
/ 26
21
/ 26
22
/ 26
23
/ 26
24
/ 26
25
/ 26
26
/ 26
More Related Content
PPTX
ActionCableのクライアントはRails外から利用できるのか
by
Yoichi Toyota
PPTX
.NETの最近
by
Makoto Nishimura
PDF
MarketPlaceのAMIをPackerで作る時、 Chefは3度配膳する
by
Yukihiko SAWANOBORI
PPTX
LINE 2016 エンジニアインターン 02
by
LINE Corporation
PDF
PHP最速フレームワークPhalconの紹介
by
Yuji Iwai
PDF
Avalonia for MacApps
by
c-mitsuba
PDF
第8回テックヒルズIBM資料
by
Tomoari Yasuda
PDF
Inside of Baremetal Server Deployment on Private Cloud
by
LINE Corporation
ActionCableのクライアントはRails外から利用できるのか
by
Yoichi Toyota
.NETの最近
by
Makoto Nishimura
MarketPlaceのAMIをPackerで作る時、 Chefは3度配膳する
by
Yukihiko SAWANOBORI
LINE 2016 エンジニアインターン 02
by
LINE Corporation
PHP最速フレームワークPhalconの紹介
by
Yuji Iwai
Avalonia for MacApps
by
c-mitsuba
第8回テックヒルズIBM資料
by
Tomoari Yasuda
Inside of Baremetal Server Deployment on Private Cloud
by
LINE Corporation
What's hot
PPTX
入門者の方向け Azure PlayFab の簡単な紹介
by
YutoNishine
PPTX
Ansible
by
Hideo Amezawa
PPTX
Mcbeサーバーリスト
by
kaisou wakame
PDF
a-blog cms の基本 福岡版
by
Kasumi Morita
PDF
Core Animationの話 Part.1
by
Yuichi Fujishige
PPTX
最近のPerlバイナリマネージャー Perl 編
by
Tokuhiro Matsuno
PDF
運用に効く!JVMオプション三選
by
Kazuhiro Oinuma
PDF
CAKeyframeAnimation
by
Yuichi Fujishige
PPT
symfonyの始め方
by
Hidenori Goto
PDF
Abc words20130615
by
Toshihiro Yoshiura
入門者の方向け Azure PlayFab の簡単な紹介
by
YutoNishine
Ansible
by
Hideo Amezawa
Mcbeサーバーリスト
by
kaisou wakame
a-blog cms の基本 福岡版
by
Kasumi Morita
Core Animationの話 Part.1
by
Yuichi Fujishige
最近のPerlバイナリマネージャー Perl 編
by
Tokuhiro Matsuno
運用に効く!JVMオプション三選
by
Kazuhiro Oinuma
CAKeyframeAnimation
by
Yuichi Fujishige
symfonyの始め方
by
Hidenori Goto
Abc words20130615
by
Toshihiro Yoshiura
Viewers also liked
PDF
Phpconf2010
by
KLab株式会社
PDF
KLabのSI事業について
by
KLab株式会社
PDF
ネットワークの負荷分散を手軽に - OSC2015 Hokkaido
by
Shinya Takebayashi
PDF
MySQL負荷分散の方法
by
佐久本正太
PDF
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
by
KLab株式会社
PPTX
負荷分散勉強会
by
Yuji Otani
Phpconf2010
by
KLab株式会社
KLabのSI事業について
by
KLab株式会社
ネットワークの負荷分散を手軽に - OSC2015 Hokkaido
by
Shinya Takebayashi
MySQL負荷分散の方法
by
佐久本正太
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
by
KLab株式会社
負荷分散勉強会
by
Yuji Otani
Similar to KLab Social Game Platform ~Symfony1.4活用事例~
PPT
Symfony事例紹介
by
Daichi Kamemoto
PPT
20090415 すばらしきSymfonyの世界へようこそ
by
Hiromu Shioya
PDF
日本Symfonyユーザ会によるSymfony2 ワークショップ
by
Shin Ohno
PDF
あにみた!(PHPカンファレンス用資料)
by
Hiroyuki Ishiyama
PDF
地方企業がソーシャルゲーム開発を成功させるための10のポイント
by
Kentaro Matsui
PDF
WTM53 phpフレームワーク いまさらcodeigniter
by
Masanori Oobayashi
PDF
Silex入門
by
Takuya Sato
PDF
0730 bp study#35発表資料
by
Yasuhiro Horiuchi
ODP
20分でSymfony@OSC名古屋
by
Shingo Nakamura
PDF
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
by
ericsagnes
PDF
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
by
Tomoki Hasegawa
PPTX
Introduction of symfony development process & What's symfony 1.3?
by
Kousuke Ebihara
PDF
Drupal8 〜 モダンなアーキテクチャのPHPベース OSS CMS
by
Tomoki Hasegawa
PDF
Software Development with Symfony
by
Atsuhiro Kubo
PDF
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
by
Akihiro Kuwano
PPTX
JavaFX + NetBeans環境におけるJenkinsの活用(Jenkins第六回勉強会)
by
Ryusaburo Tanaka
PDF
Symfony2でより良いソフトウェアを作るために
by
Atsuhiro Kubo
KEY
ゆるかわPhp
by
Ryota Mochizuki
PDF
Symfony2 チュートリアル イントロダクション osc 2011 nagoya
by
Hidenori Goto
PDF
大規模JavaScript開発
by
Yoshiki Shibukawa
Symfony事例紹介
by
Daichi Kamemoto
20090415 すばらしきSymfonyの世界へようこそ
by
Hiromu Shioya
日本Symfonyユーザ会によるSymfony2 ワークショップ
by
Shin Ohno
あにみた!(PHPカンファレンス用資料)
by
Hiroyuki Ishiyama
地方企業がソーシャルゲーム開発を成功させるための10のポイント
by
Kentaro Matsui
WTM53 phpフレームワーク いまさらcodeigniter
by
Masanori Oobayashi
Silex入門
by
Takuya Sato
0730 bp study#35発表資料
by
Yasuhiro Horiuchi
20分でSymfony@OSC名古屋
by
Shingo Nakamura
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
by
ericsagnes
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
by
Tomoki Hasegawa
Introduction of symfony development process & What's symfony 1.3?
by
Kousuke Ebihara
Drupal8 〜 モダンなアーキテクチャのPHPベース OSS CMS
by
Tomoki Hasegawa
Software Development with Symfony
by
Atsuhiro Kubo
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
by
Akihiro Kuwano
JavaFX + NetBeans環境におけるJenkinsの活用(Jenkins第六回勉強会)
by
Ryusaburo Tanaka
Symfony2でより良いソフトウェアを作るために
by
Atsuhiro Kubo
ゆるかわPhp
by
Ryota Mochizuki
Symfony2 チュートリアル イントロダクション osc 2011 nagoya
by
Hidenori Goto
大規模JavaScript開発
by
Yoshiki Shibukawa
More from KLab株式会社
PDF
KLab si_case
by
KLab株式会社
PDF
KLab si_operation
by
KLab株式会社
PPT
Cheerz presentation110217
by
KLab株式会社
PPT
アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)
by
KLab株式会社
PPT
New cheerz slideshare_version
by
KLab株式会社
PPT
大ヒットソーシャルアプリの裏側
by
KLab株式会社
PDF
Dsas周りのお話
by
KLab株式会社
PPT
Bazaar
by
KLab株式会社
KEY
Apache2.3 探訪
by
KLab株式会社
PPT
ベイジアンフィルターによるユーザー投稿フィルタリングエンジンIshigroid
by
KLab株式会社
PPT
LL言語でもHudsonを使おう!
by
KLab株式会社
KLab si_case
by
KLab株式会社
KLab si_operation
by
KLab株式会社
Cheerz presentation110217
by
KLab株式会社
アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)
by
KLab株式会社
New cheerz slideshare_version
by
KLab株式会社
大ヒットソーシャルアプリの裏側
by
KLab株式会社
Dsas周りのお話
by
KLab株式会社
Bazaar
by
KLab株式会社
Apache2.3 探訪
by
KLab株式会社
ベイジアンフィルターによるユーザー投稿フィルタリングエンジンIshigroid
by
KLab株式会社
LL言語でもHudsonを使おう!
by
KLab株式会社
KLab Social Game Platform ~Symfony1.4活用事例~
1.
KLab Social Game
Platform Symfony1.4活用事例 Kラボラトリー 研究開発部 高田敦史
2.
自己紹介 書籍依存症
3.
症候
南面 北面
4.
アジェンダ •
KLab Social Game Platform • Symfonyとの付き合い方 • Symfonyの機能拡張 • Symfonyを使った運用体制
5.
KLab Social Game
Platform • ビジョン – ナンバーワン • 目標 – 打倒、6,000pv/sec – 1ヶ月で横展開 – 24時間(3営業日)で使える
6.
構成
画像 / コンテンツ 個別Game 個別 Person アイテム ショップ ポイント 課金 掲示板 Friend ジェネレータ Avatarジェネレータ Flash Game Marketing Tools KLab Social Game Platform DBI OpenSocial API Wrapper SNS Mock CMS AN Standard(SimpleFramework) Server PHP5 / Symfony 1.4 KeyValue Message MySQL5 Strage Queue
7.
Symfonyとの付き合い方 • つくりたいのは、 –
「携帯サイト」 – 「ソーシャルアプリ」 • 必要なのは、 – シンプルで高負荷に耐えられるフレームワーク • 高機能なORマッパー? ジェネレータ? – 必要ない
8.
KLabにとってのSymfony • Symfonyの骨格だけを利用したい –
設定ファイルやオートローダー、基本の機能を0 からつくる必要はない • Symfonyは意外と柔軟 – 必要な部分だけ使う
9.
目標と手段 • 目標: 高負荷サイト
– ×「簡単につくれるけど、チューニングできない」 – ○「シンプルで、機能追加しやすい」 • 手段: Symfony + ??? – Symfonyは高機能だけど、拡張性も高い
10.
Symfonyを拡張しよう • プラグインを最大限活用 –
改造しすぎ… – でも汎用的で移植は簡単! • プライベートプラグイン – http://www.symfony- project.org/jobeet/1_4/Propel/ja/20
11.
Symfonyクラスの改造 • プラグインの中に継承クラスを追加 • +
必要な部分だけ上書き • + クラス名は設定ファイルで指定 – Symfony本体を書き換えることなく機能追加でき る
12.
3つのSymfonyプラグイン • an_standard_core /
cms_core – symfonyのMVCフレームワークを置き換える – シンプルなテンプレートエンジン 主にこれの話 – 汎用的なサイト構築 をします。 • social_game_platform – ソーシャルゲームに特化した機能 • mock_server – OpenSocialのガジェットサーバー+APIサーバー のダミー
13.
AN Standard Core •
リクエストの処理、テンプレート、フォームなど、 アクション内で使用するほとんどの機能を停 止 • シンプルなコントローラ + テンプレートエンジ ンを使用 – PHPテンプレートに変えて、CMSと連動した HTMLテンプレート – UserAgent(端末情報)、絵文字の変換など携帯 サイト特有の機能
14.
フロントコントローラー書換え • フロントコントローラーを書換え
– web/main.php • sfContext -> dispatch を呼ばない – symfonyの通常のディスパッチ遷移をほとんど通りません <?php require_once realpath(dirname(__FILE__).'/../plugins/an_standard_corePlugin/lib/com mon/Initialize.php'); $configuration = ProjectConfiguration::getApplicationConfiguration('main', ENV::get('KG_ENV'), true); Batista::dispatch($configuration);
15.
比較 • 通常のSymfony
– View: PHPテンプレート – Controller: sfRequest などを使用した Symfony独自のコントローラー • AN Standard – View: 簡易テンプレートエンジン – Controller: 独自のWebフレームワーク
16.
処理の流れ フィルター: フィルター
UserAgent の解析(キャリア情報など) リクエストパラメーターの解析 CMS: フィルター: フィルター テンプレートの編集 URLのパスから適切なアクションを調べて実行 アクション: アクション DBからHTMLテンプレートを取得してタグを置換
17.
データベース • モデルクラスは、標準のDoctrine ではなく
Propel を使用 • 「本番 / 検収」「Master / Slave」の使い分け – AN_SfPropelDatabase – 複数のDBを使いわけられるようにPropelを拡張 – databases.yml で独自クラスを設定
18.
ツール群 •
Memcache • TokyoTyrant • Session • Flash合成 • 画像(アバター)合成 • 絵文字変換 – Symfonyの設定と連携して使用できるラッパーク ラスを用意
19.
ここまでのまとめ • Symfonyは改造上等 • フロントコントローラーを書き換えれば、大部
分の機能を削除して、必要な機能だけ使うこ ともできる • プライベートプラグインの活用がおすすめ • 継承 + 機能追加
20.
運用体制 • コア機能 • +
ソーシャルゲーム汎用機能 • + 個別アプリ – 担当に合わせて開発を分担 • Symfonyタスクを利用した自動化 • ブランチ + マージ – 「汎用部分の実装」と「アプリの実装」が分かれて いるとプロジェクト管理もスムーズ
21.
オリジナルSymfonyタスク • klab:build-table
– SQLでのテーブル作成を自動化 • klab:load-sql – フィクスチャをSQLでロードできるように • klab:load-template – CMSテンプレートの読み込み • klab:build-model – Propelのモデルクラスに機能追加
22.
最新の変更を適用するには? developer@goldfish:/home/developer/socialdev$ bzr pull developer@goldfish:/home/developer/socialdev$
./symfony klab:load-all • スキーマ修正の適用 + フィクスチャのロード + キャッシュクリア…etc.すべてコマンド1つ
23.
Platformとアプリケーションの
並行開発 • リポジトリを2つのブランチに分けて開発(Bazzar) • Platform側: plugins + apps(スケルトン) • アプリケーション側: apps – 開発するディレクトリが別。追加開発はマージする App App App Platform ver.0.1 Platform ver.0.2 Platform ver.0.2
24.
デモ
25.
まとめ • Symfonyは改造上等 • 必要な部分だけを使えるフレームワーク •
工夫しだいでどんどん使いやすくなる
26.
ご傾聴ありがとうございました
Download