SlideShare a Scribd company logo
Enviar pesquisa
Carregar
Fuel php活用事例
Denunciar
Compartilhar
Toshiyuki Maeda
Seguir
•
6 gostaram
•
5,149 visualizações
1
de
54
Fuel php活用事例
•
6 gostaram
•
5,149 visualizações
Denunciar
Compartilhar
Baixar agora
Baixar para ler offline
FuelPHP 勉強会 東京 vol.3にて弊社のメンバーが発表した資料です。
Leia mais
Toshiyuki Maeda
Seguir
Recomendados
雲の上の継続的デリバリー por
雲の上の継続的デリバリー
Salesforce Developers Japan
2K visualizações
•
33 slides
スキニーなシステム開発にぴったりの契約形態 por
スキニーなシステム開発にぴったりの契約形態
Eiwa System Management, Inc.
1.1K visualizações
•
56 slides
Bitbucketを活用したコードレビュー改善事例 por
Bitbucketを活用したコードレビュー改善事例
Kosuke Ito
5.9K visualizações
•
37 slides
保守運用コストの適正化事例 20120725 por
保守運用コストの適正化事例 20120725
コシキ・バリューハブ株式会社/KOSHIKI ValueHub
9.7K visualizações
•
22 slides
ULSアジャイル推進室 基幹系システムの再構築におけるDDD事例 20160312 por
ULSアジャイル推進室 基幹系システムの再構築におけるDDD事例 20160312
Yuki Tagami
2.3K visualizações
•
20 slides
FuelPHP por
FuelPHP
Nitin Reddy Katkam
4.6K visualizações
•
18 slides
Mais conteúdo relacionado
Similar a Fuel php活用事例
2014-04-22 Ques #4 Automation Testing of Mobage Platform por
2014-04-22 Ques #4 Automation Testing of Mobage Platform
Masaki Nakagawa
6.6K visualizações
•
64 slides
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方 por
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方
Takahiro Imanaka
2.8K visualizações
•
50 slides
Automation with SoftLayer and Zabbix por
Automation with SoftLayer and Zabbix
softlayerjp
1.5K visualizações
•
52 slides
AZAREA-Clusterセミナー(クラウドEXPO2013春) por
AZAREA-Clusterセミナー(クラウドEXPO2013春)
AzareaCluster
852 visualizações
•
23 slides
AWS における Microservices Architecture と DevOps を推進する組織と人とツール por
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
Amazon Web Services Japan
3.2K visualizações
•
57 slides
はじめてのアマゾンウェブサービス @ JAWS DAYS 2014 por
はじめてのアマゾンウェブサービス @ JAWS DAYS 2014
Yasuhiro Horiuchi
4.1K visualizações
•
67 slides
Similar a Fuel php活用事例
(20)
2014-04-22 Ques #4 Automation Testing of Mobage Platform por Masaki Nakagawa
2014-04-22 Ques #4 Automation Testing of Mobage Platform
Masaki Nakagawa
•
6.6K visualizações
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方 por Takahiro Imanaka
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方
Takahiro Imanaka
•
2.8K visualizações
Automation with SoftLayer and Zabbix por softlayerjp
Automation with SoftLayer and Zabbix
softlayerjp
•
1.5K visualizações
AZAREA-Clusterセミナー(クラウドEXPO2013春) por AzareaCluster
AZAREA-Clusterセミナー(クラウドEXPO2013春)
AzareaCluster
•
852 visualizações
AWS における Microservices Architecture と DevOps を推進する組織と人とツール por Amazon Web Services Japan
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
Amazon Web Services Japan
•
3.2K visualizações
はじめてのアマゾンウェブサービス @ JAWS DAYS 2014 por Yasuhiro Horiuchi
はじめてのアマゾンウェブサービス @ JAWS DAYS 2014
Yasuhiro Horiuchi
•
4.1K visualizações
Engine Yard - 商用マルチクラウドPaaS por Takahiro Imanaka
Engine Yard - 商用マルチクラウドPaaS
Takahiro Imanaka
•
3.5K visualizações
リクルートにおけるPaaS活用事例 por Recruit Technologies
リクルートにおけるPaaS活用事例
Recruit Technologies
•
3.4K visualizações
SIerとクラウドの付き合い方 por Yusuke Suzuki
SIerとクラウドの付き合い方
Yusuke Suzuki
•
2.6K visualizações
Spath for enterprise por Koichiro Sumi
Spath for enterprise
Koichiro Sumi
•
747 visualizações
クラウド活用で実現する、開発・保守の効率化 por Hiroshi Koyama
クラウド活用で実現する、開発・保守の効率化
Hiroshi Koyama
•
1.2K visualizações
Cloud native strategy ver1.1 por TomohiroDoi
Cloud native strategy ver1.1
TomohiroDoi
•
265 visualizações
Data analysis platform ver1.1 por TomohiroDoi
Data analysis platform ver1.1
TomohiroDoi
•
389 visualizações
[CTO Night & Day 2019] ML services: MLOps #ctonight por Amazon Web Services Japan
[CTO Night & Day 2019] ML services: MLOps #ctonight
Amazon Web Services Japan
•
2.4K visualizações
Ossを使ったazureでのdev ops por 裕貴 荒井
Ossを使ったazureでのdev ops
裕貴 荒井
•
514 visualizações
JAWS-UG三都物語_企業でのAWS導入のエントリーポイント por Toshiyuki Konparu
JAWS-UG三都物語_企業でのAWS導入のエントリーポイント
Toshiyuki Konparu
•
1.8K visualizações
雲の上の継続的デリバリー - Cloudforce Japan 2012 por グロースエクスパートナーズ株式会社/Growth xPartners Incorporated.
雲の上の継続的デリバリー - Cloudforce Japan 2012
グロースエクスパートナーズ株式会社/Growth xPartners Incorporated.
•
5K visualizações
[網元] WordPress 高速化チューニング AMI por Hiromichi Koga
[網元] WordPress 高速化チューニング AMI
Hiromichi Koga
•
1.8K visualizações
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechcon por DeNA
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechcon
DeNA
•
4.8K visualizações
20180613 AWS Black Belt Online Seminar AWS Cloud9 入門 por Amazon Web Services Japan
20180613 AWS Black Belt Online Seminar AWS Cloud9 入門
Amazon Web Services Japan
•
11.1K visualizações
Fuel php活用事例
1.
FuelPHP活用事例
2013年3月23日 株式会社シーエー・アドバンス 技術統括本部 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
2.
シーエー・アドバンスってどんな会社?
2008年に、サイバーエージェントの子会社として設立。 インターネットメディアや広告の運用に関連する事業を中心に 行っている会社です。 従業員数は約350人で、東京と沖縄に事業所があります。 (東京約50名、沖縄約300名) エンジニアチームは東京、沖縄合計で20名ほどです。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
3.
弊社では、複数のプロジェクトでFuelPHPを採
用しています。 今日は、社内でFuelPHPをどのように利用して いるか紹介したいと思います。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
4.
時間の関係で深い部分までは紹介できないの
ですが、気になった点は終了後に質問してく ださい。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
5.
FuelPHPを採用している
社内のプロジェクト Copyright © 2013 CAADvance, Inc. All Rights Reserved.
6.
CS(カスタマーサポート)
社内業務ポータル Copyright © 2013 CAADvance, Inc. All Rights Reserved.
7.
画像・投稿監視の管理システム Copyright © 2013
CAADvance, Inc. All Rights Reserved.
8.
CS (カスタマーサポート)
社外向け業務支援システム Copyright © 2013 CAADvance, Inc. All Rights Reserved.
9.
SEM運用支援システム Copyright © 2013
CAADvance, Inc. All Rights Reserved.
10.
その他、小さいシステムも含めて多く
のプロジェクトでFuelPHPを採用して います。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
11.
今日ピックアップするプロジェクト
・CS業務支援システム ・SEM運用支援システム Copyright © 2013 CAADvance, Inc. All Rights Reserved.
12.
採用事例①
CS (カスタマーサポート) 社外向け業務支援システム Copyright © 2013 CAADvance, Inc. All Rights Reserved.
13.
システム概要
ソーシャルアプリに特化して、 ○ユーザから問い合わせの受付 ↓ ○開発者へのエスカレーション ↓ ○ユーザへの返信 までを行う事ができるシステムです。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
14.
プロジェクトメンバー
プロジェクト統 インフラ担当 コーディング担 括 倉原さん 当 鈴木さん 根岸さん Copyright © 2013 CAADvance, Inc. All Rights Reserved.
15.
開発期間
■初期開発 2012年7月〜2012年11月 ■現在のフェーズ クライアントへの導入・機能追加・改 善を続けています。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
16.
システム構成
サーバ環境 :AWS OS :AmazonLinux Webサーバ :nginx DB :MySQL5.5 言語 :PHP5.4 FuelPHP :1.3 その他 :Redis, Fluentd Copyright © 2013 CAADvance, Inc. All Rights Reserved.
17.
構成はこんな感じです。
NAT Proxy 監視 ログ Batch WebAp NAT DB Cache Availability Zone Availability Zone Availability Zone Copyright © 2013 CAADvance, Inc. All Rights Reserved.
18.
FuelPHP採用の理由
① スピード感のある開発が求められた。 ② CodeIgniter経験メンバーが居た。 ③ ロゴやサイトがイケててテンションが上 がる。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
19.
開発にあたって
工夫した点をご紹介します。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
20.
ログクラスの拡張
ログ出力クラスを拡張して、システム監 視やエラー調査を効率化しています。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
21.
ログクラスの拡張
① ログ出力先の変更 変更前:/logs/YYYY/MM/DD/~.php 変更後:/logs/~.php Copyright © 2013 CAADvance, Inc. All Rights Reserved.
22.
ログクラスの拡張
② ログ出力内容の変更 クラス名、ファンクション名、ユーザ名 等の情報を追加。ログからの各種調査を 行いやすいようにしています。 [YmdHis] [ClassName] [FunctionName] [UserName] [Message] ・・・ ・・・ Copyright © 2013 CAADvance, Inc. All Rights Reserved.
23.
validationクラスの拡張
validationクラスを拡張して、独自の チェック方法を追加しました。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
24.
validationクラスの拡張
機能拡張① 日付チェック (YYYY-MM-DD形式&存在する日付) Copyright © 2013 CAADvance, Inc. All Rights Reserved.
25.
validationクラスの拡張
機能拡張② 英数&記号の一括チェック Copyright © 2013 CAADvance, Inc. All Rights Reserved.
26.
validationクラスの拡張
機能拡張③ アップロードされたcsvファイルに対する チェック。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
27.
paginationのカスタマイズ
標準で実装されているpagenationはGETで行 い、URLにページ番号がつく。 ↓ ajaxのPOSTを使用してpagenationが行える ように機能を追加しています。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
28.
Redisの活用
現在はセッションの管理や単純なデータ 保持にRedisを活用しています。 標準でアクセスクラスが用意されていま すので、簡単にRedisを利用する事がで きます。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
29.
Jenkinsでコーディングチェック
Jenkinsを活用してFuelPHPのコーディング 規約をチェックできるようにしています。 リリース前にコーディング規約のチェック& ユニットテストを行い、その後にリリース を行うフローをとっています。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
30.
REST-APIの開発
外部システムとの連携に、REST-APIを 実装しています。 FuelPHP標準のController_Restクラス を継承して、簡単に構築することがで きました。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
31.
CS業務支援システムにおける工夫は
以上です。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
32.
採用事例②
SEM運用支援システム Copyright © 2013 CAADvance, Inc. All Rights Reserved.
33.
システム概要
インターネット広告の運用を効率的に行う ためのシステムです。 元々社内で開発・運用していた基幹システ ムを、社外の顧客に提供できるように再構 築を行っています。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
34.
プロジェクトメンバー
開発リーダー 開発メンバー 前田さん 中村さん Copyright © 2013 CAADvance, Inc. All Rights Reserved.
35.
開発期間
■初期開発 2012年8月〜2012年12月 ■現在のフェーズ 機能追加や改善をどんどん行って います。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
36.
システム構成
サーバ環境 :IIJ GIO(クラウド) OS :CentOS6 Webサーバ :Apache2,2 DB :MySQL5.5 言語 :PHP5.3 FuelPHP :1.2 その他 :Memcached, Smarty Copyright © 2013 CAADvance, Inc. All Rights Reserved.
37.
構成はこんな感じです。
Intranet 監視(zabbix) Intranet VPN IIJ GIO(クラウ ド) Load Balancer Web / Cache / DB Web / Cache / DB Copyright © 2013 CAADvance, Inc. All Rights Reserved.
38.
FuelPHP採用の理由
フレームワーク未使用の社内システムから 機能を切り出した社外向けシステム。 ↓ 条件① 開発の制約が尐なく、自由度が高い。 条件② 既存の部品を再利用して高速開発できる。 この条件を満たしていたのがFuelPHPでした。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
39.
開発にあたって
工夫した点をご紹介します Copyright © 2013 CAADvance, Inc. All Rights Reserved.
40.
機能単位のサブディレクトリ
Model/Controller/Viewにサブディレク トリを作り、サブシステム単位で纏め て管理しています。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
41.
機能単位のサブディレクトリ Copyright © 2013
CAADvance, Inc. All Rights Reserved.
42.
機能単位のサブディレクトリ
controller/memu/ディレクトリにloginを配置する場合、 loginコントローラーは class Controller_Menu_Login extends Controller_Template { このように名前を付ければOKです。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
43.
Smartyの導入
テンプレートエンジンとしてSmartyを 使っています。 経験メンバーが居たので、開発スピー ドを上げるためです。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
44.
Smartyの導入
FuelPHPでは簡単にSmartyを導入するこ とができます。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
45.
Smartyの導入
■導入手順 ① fuel/app/vendor/ ここにダウンロードしたSmartyを配置。 ② fuel/app/config/config.php このファイルの always_load の packages に parser を 追加。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
46.
Smartyの導入
■導入手順 ③ コントローラーでViewを読み込む際、 Response::forge(View_Smarty::forge(XXXX', $data)); このように記述すればOKです。 viewのテンプレートとして.smartyが読み込まれま す。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
47.
Viewにオブジェクトを渡す
Viewにオブジェクトを渡せるように、 config.phpのwhitelisted_classesに該当クラ スを追加しました。 view表示の際に適用されるhtmlentitiesは、各 クラスに独自で実装する必要があります。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
48.
既存資産の活用
DB/Memcacheへのアクセスは、移植元のシステムで 作ったものをそのまま使用しています。 ログ出力クラスについても、移植元のシステムで 使っていたものを修正して使用しています。 移植の工数を減らし、既存システムの資産を最大 限活かすためです。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
49.
SEM運用支援システムにおける工夫は
以上です。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
50.
社内でFuelPHPを使用したメンバーに、
感想を聞いてみました。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
51.
採用して良かった点。
・非常にとっつきやすく、使いやすい。 ・入門書が発売されているので、学習しやすい。 ・namespace 初めは戸惑ったけど慣れると便利。 ・Coreクラスを理解・拡張しやすい。 ・バッチがとても作りやすい。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
52.
苦労した点。
・日本語のドキュメントが一部しか存在しな い。 ・URLに「_」が使用できないので戸惑った。 ・フレームワークのリリーススパンが短いた め、どのタイミングでバージョンアップする か悩む。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
53.
これからもシーエー・アドバンスは
FuelPHPを積極的に活用していきたいと 思います。 Copyright © 2013 CAADvance, Inc. All Rights Reserved.
54.
ご清聴ありがとうございました。 Copyright © 2013
CAADvance, Inc. All Rights Reserved.