Enviar búsqueda
Cargar
Yet another use of Phalcon
•
1 recomendación
•
17,553 vistas
Yuji Iwai
Seguir
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 26
Descargar ahora
Descargar para leer sin conexión
Recomendados
Phalcon + AngularJSで作る動画プラットフォーム
Phalcon + AngularJSで作る動画プラットフォーム
ryo-utsunomiya
受託開発のPhalcon
受託開発のPhalcon
Masatoshi Hiraoka
Phalcon勉強会資料
Phalcon勉強会資料
Yuji Otani
はじめてのDreamforce はじめてのLightning
はじめてのDreamforce はじめてのLightning
Taiki Yoshikawa
アンドロイダーが取り組むXamarin開発
アンドロイダーが取り組むXamarin開発
Daisuke Tsutsumi
Android enterpriseで実現できる端末管理の世界
Android enterpriseで実現できる端末管理の世界
Daisuke Tsutsumi
Fxug
Fxug
satoshi
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
Honma Masashi
Recomendados
Phalcon + AngularJSで作る動画プラットフォーム
Phalcon + AngularJSで作る動画プラットフォーム
ryo-utsunomiya
受託開発のPhalcon
受託開発のPhalcon
Masatoshi Hiraoka
Phalcon勉強会資料
Phalcon勉強会資料
Yuji Otani
はじめてのDreamforce はじめてのLightning
はじめてのDreamforce はじめてのLightning
Taiki Yoshikawa
アンドロイダーが取り組むXamarin開発
アンドロイダーが取り組むXamarin開発
Daisuke Tsutsumi
Android enterpriseで実現できる端末管理の世界
Android enterpriseで実現できる端末管理の世界
Daisuke Tsutsumi
Fxug
Fxug
satoshi
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
Honma Masashi
スマートフォンにおけるアニメーション実装 ~FlashからHTML5へシフトするには~
スマートフォンにおけるアニメーション実装 ~FlashからHTML5へシフトするには~
Yutaka Sano
Windows10時代のクロスプラットフォーム開発
Windows10時代のクロスプラットフォーム開発
Kazushi Kamegawa
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
アシアル株式会社
Firefox OS App Dev
Firefox OS App Dev
dynamis
Tapjoy indies stream-ustream第2弾
Tapjoy indies stream-ustream第2弾
Masakazu Murakami
PhucSon Software Company - Image Present
PhucSon Software Company - Image Present
FuKuYama Software Company
Web App Platform Firefox
Web App Platform Firefox
dynamis
Web Speech API で2時間で作れる?ブラウザロボット
Web Speech API で2時間で作れる?ブラウザロボット
Hirokazu Egashira
kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験
アシアル株式会社
Gartner summit 2016
Gartner summit 2016
アシアル株式会社
Firefox OS Updates 201311
Firefox OS Updates 201311
dynamis
20140920 CreatorsMeetup20
20140920 CreatorsMeetup20
Seigo Tanaka
トラブル発生、その時あなたがすることは?
トラブル発生、その時あなたがすることは?
Kazushi Kamegawa
Firefox OS 1.0 Application Development
Firefox OS 1.0 Application Development
dynamis
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
アシアル株式会社
Firefox OS @ ABC2013A
Firefox OS @ ABC2013A
dynamis
Firefox os hackathon
Firefox os hackathon
dynamis
Try Firefox OS
Try Firefox OS
dynamis
Redmineの9年間の歩みを振り返ってみる
Redmineの9年間の歩みを振り返ってみる
Go Maeda
ご紹介、GUIでサクッと自動応答システムを作る方法 ー Slack/LINEとの連携も簡単 ー FrontOps : フロント・オプス
ご紹介、GUIでサクッと自動応答システムを作る方法 ー Slack/LINEとの連携も簡単 ー FrontOps : フロント・オプス
Kazuki Saito
3流プログラマーから見たPhalconとWISP
3流プログラマーから見たPhalconとWISP
YamaYamamoto
PHP buildpackでhackとphalconが動いた件について
PHP buildpackでhackとphalconが動いた件について
健治郎 安井
Más contenido relacionado
La actualidad más candente
スマートフォンにおけるアニメーション実装 ~FlashからHTML5へシフトするには~
スマートフォンにおけるアニメーション実装 ~FlashからHTML5へシフトするには~
Yutaka Sano
Windows10時代のクロスプラットフォーム開発
Windows10時代のクロスプラットフォーム開発
Kazushi Kamegawa
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
アシアル株式会社
Firefox OS App Dev
Firefox OS App Dev
dynamis
Tapjoy indies stream-ustream第2弾
Tapjoy indies stream-ustream第2弾
Masakazu Murakami
PhucSon Software Company - Image Present
PhucSon Software Company - Image Present
FuKuYama Software Company
Web App Platform Firefox
Web App Platform Firefox
dynamis
Web Speech API で2時間で作れる?ブラウザロボット
Web Speech API で2時間で作れる?ブラウザロボット
Hirokazu Egashira
kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験
アシアル株式会社
Gartner summit 2016
Gartner summit 2016
アシアル株式会社
Firefox OS Updates 201311
Firefox OS Updates 201311
dynamis
20140920 CreatorsMeetup20
20140920 CreatorsMeetup20
Seigo Tanaka
トラブル発生、その時あなたがすることは?
トラブル発生、その時あなたがすることは?
Kazushi Kamegawa
Firefox OS 1.0 Application Development
Firefox OS 1.0 Application Development
dynamis
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
アシアル株式会社
Firefox OS @ ABC2013A
Firefox OS @ ABC2013A
dynamis
Firefox os hackathon
Firefox os hackathon
dynamis
Try Firefox OS
Try Firefox OS
dynamis
Redmineの9年間の歩みを振り返ってみる
Redmineの9年間の歩みを振り返ってみる
Go Maeda
ご紹介、GUIでサクッと自動応答システムを作る方法 ー Slack/LINEとの連携も簡単 ー FrontOps : フロント・オプス
ご紹介、GUIでサクッと自動応答システムを作る方法 ー Slack/LINEとの連携も簡単 ー FrontOps : フロント・オプス
Kazuki Saito
La actualidad más candente
(20)
スマートフォンにおけるアニメーション実装 ~FlashからHTML5へシフトするには~
スマートフォンにおけるアニメーション実装 ~FlashからHTML5へシフトするには~
Windows10時代のクロスプラットフォーム開発
Windows10時代のクロスプラットフォーム開発
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
Firefox OS App Dev
Firefox OS App Dev
Tapjoy indies stream-ustream第2弾
Tapjoy indies stream-ustream第2弾
PhucSon Software Company - Image Present
PhucSon Software Company - Image Present
Web App Platform Firefox
Web App Platform Firefox
Web Speech API で2時間で作れる?ブラウザロボット
Web Speech API で2時間で作れる?ブラウザロボット
kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験
Gartner summit 2016
Gartner summit 2016
Firefox OS Updates 201311
Firefox OS Updates 201311
20140920 CreatorsMeetup20
20140920 CreatorsMeetup20
トラブル発生、その時あなたがすることは?
トラブル発生、その時あなたがすることは?
Firefox OS 1.0 Application Development
Firefox OS 1.0 Application Development
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
Firefox OS @ ABC2013A
Firefox OS @ ABC2013A
Firefox os hackathon
Firefox os hackathon
Try Firefox OS
Try Firefox OS
Redmineの9年間の歩みを振り返ってみる
Redmineの9年間の歩みを振り返ってみる
ご紹介、GUIでサクッと自動応答システムを作る方法 ー Slack/LINEとの連携も簡単 ー FrontOps : フロント・オプス
ご紹介、GUIでサクッと自動応答システムを作る方法 ー Slack/LINEとの連携も簡単 ー FrontOps : フロント・オプス
Destacado
3流プログラマーから見たPhalconとWISP
3流プログラマーから見たPhalconとWISP
YamaYamamoto
PHP buildpackでhackとphalconが動いた件について
PHP buildpackでhackとphalconが動いた件について
健治郎 安井
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
leverages_event
Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門
leverages_event
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4
アシアル株式会社
Dependency management in PHP & ZendFramework 2
Dependency management in PHP & ZendFramework 2
Kirill Chebunin
はじめてのCodeIgniter
はじめてのCodeIgniter
Yuya Matsushima
PHP勉強会 #51
PHP勉強会 #51
Takako Miyagawa
Symfony2 チュートリアル イントロダクション osc 2011 nagoya
Symfony2 チュートリアル イントロダクション osc 2011 nagoya
Hidenori Goto
CodeIgniter入門
CodeIgniter入門
Sho A
PHPUnitでリファクタリング
PHPUnitでリファクタリング
Takako Miyagawa
はじめてのSymfony2
はじめてのSymfony2
Tomohiro MITSUMUNE
Codeigniter3フレームアップデート
Codeigniter3フレームアップデート
tomohiro kitaura
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るために
Atsuhiro Kubo
Code igniterを初めて使うときにはまった4つのポイント
Code igniterを初めて使うときにはまった4つのポイント
noldor
Vue.js for HIKARABO
Vue.js for HIKARABO
Hiroto Murai
Symfony2でMongoDBと仲良くする方法
Symfony2でMongoDBと仲良くする方法
Koji Iwazaki
ZFConf 2012: Zend Framework 2, a quick start (Enrico Zimuel)
ZFConf 2012: Zend Framework 2, a quick start (Enrico Zimuel)
ZFConf Conference
Zend四十八手シリーズ Zend_Cache Zend_Paginator
Zend四十八手シリーズ Zend_Cache Zend_Paginator
Yusuke Ando
Destacado
(19)
3流プログラマーから見たPhalconとWISP
3流プログラマーから見たPhalconとWISP
PHP buildpackでhackとphalconが動いた件について
PHP buildpackでhackとphalconが動いた件について
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4
Dependency management in PHP & ZendFramework 2
Dependency management in PHP & ZendFramework 2
はじめてのCodeIgniter
はじめてのCodeIgniter
PHP勉強会 #51
PHP勉強会 #51
Symfony2 チュートリアル イントロダクション osc 2011 nagoya
Symfony2 チュートリアル イントロダクション osc 2011 nagoya
CodeIgniter入門
CodeIgniter入門
PHPUnitでリファクタリング
PHPUnitでリファクタリング
はじめてのSymfony2
はじめてのSymfony2
Codeigniter3フレームアップデート
Codeigniter3フレームアップデート
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るために
Code igniterを初めて使うときにはまった4つのポイント
Code igniterを初めて使うときにはまった4つのポイント
Vue.js for HIKARABO
Vue.js for HIKARABO
Symfony2でMongoDBと仲良くする方法
Symfony2でMongoDBと仲良くする方法
ZFConf 2012: Zend Framework 2, a quick start (Enrico Zimuel)
ZFConf 2012: Zend Framework 2, a quick start (Enrico Zimuel)
Zend四十八手シリーズ Zend_Cache Zend_Paginator
Zend四十八手シリーズ Zend_Cache Zend_Paginator
Similar a Yet another use of Phalcon
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
Masayuki KaToH
Hack+FuelPHPによるWebサービス開発
Hack+FuelPHPによるWebサービス開発
Yuji Otani
混沌化の実装にテストを入れよう体験談(現在進行形)
混沌化の実装にテストを入れよう体験談(現在進行形)
Yuki Hoshino
Jenkinsを使おうよ
Jenkinsを使おうよ
Yohei Oda
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーション
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーション
Kaz Aiso
SpringIO2019報告_Kotlin関連
SpringIO2019報告_Kotlin関連
ShingoKurihara1
PyCon JP 2015 keynote
PyCon JP 2015 keynote
Haruo Sato
PyCon JP 2014 plone terada
PyCon JP 2014 plone terada
Manabu Terada
PHP7がリリースされたいま、 改めてHackについて考える。
PHP7がリリースされたいま、 改めてHackについて考える。
Yuji Otani
アジャイル開発導入のためにやってきたこと
アジャイル開発導入のためにやってきたこと
Arata Fujimura
Nyle流 Scalaとの付き合い方
Nyle流 Scalaとの付き合い方
Nyle Inc.(ナイル株式会社)
メディアへの寄稿をやってみて〜きっかけと仕事の流れ
メディアへの寄稿をやってみて〜きっかけと仕事の流れ
sugimoto1022
Lync 2013 アプリの開発ーJapan SharePoint Group
Lync 2013 アプリの開発ーJapan SharePoint Group
adachiyosuke
Lync 2013 sdkの開発について 2014年5月17日 技術ひろば_office365勉強会
Lync 2013 sdkの開発について 2014年5月17日 技術ひろば_office365勉強会
adachiyosuke
Flex入門
Flex入門
Shinjiro Watanabe
UnityとBlenderハンズオン第7章
UnityとBlenderハンズオン第7章
yaju88
Flutter first impression
Flutter first impression
小川 昌吾
Apple sapの提携のその後
Apple sapの提携のその後
智洋 大野
初backlogで、試行錯誤。最終的にこうなった!
初backlogで、試行錯誤。最終的にこうなった!
Masahiro Ienaga
Go言語のフレームワークRevelの紹介とサービスにおける活用事例
Go言語のフレームワークRevelの紹介とサービスにおける活用事例
Yuji Otani
Similar a Yet another use of Phalcon
(20)
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
Hack+FuelPHPによるWebサービス開発
Hack+FuelPHPによるWebサービス開発
混沌化の実装にテストを入れよう体験談(現在進行形)
混沌化の実装にテストを入れよう体験談(現在進行形)
Jenkinsを使おうよ
Jenkinsを使おうよ
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーション
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーション
SpringIO2019報告_Kotlin関連
SpringIO2019報告_Kotlin関連
PyCon JP 2015 keynote
PyCon JP 2015 keynote
PyCon JP 2014 plone terada
PyCon JP 2014 plone terada
PHP7がリリースされたいま、 改めてHackについて考える。
PHP7がリリースされたいま、 改めてHackについて考える。
アジャイル開発導入のためにやってきたこと
アジャイル開発導入のためにやってきたこと
Nyle流 Scalaとの付き合い方
Nyle流 Scalaとの付き合い方
メディアへの寄稿をやってみて〜きっかけと仕事の流れ
メディアへの寄稿をやってみて〜きっかけと仕事の流れ
Lync 2013 アプリの開発ーJapan SharePoint Group
Lync 2013 アプリの開発ーJapan SharePoint Group
Lync 2013 sdkの開発について 2014年5月17日 技術ひろば_office365勉強会
Lync 2013 sdkの開発について 2014年5月17日 技術ひろば_office365勉強会
Flex入門
Flex入門
UnityとBlenderハンズオン第7章
UnityとBlenderハンズオン第7章
Flutter first impression
Flutter first impression
Apple sapの提携のその後
Apple sapの提携のその後
初backlogで、試行錯誤。最終的にこうなった!
初backlogで、試行錯誤。最終的にこうなった!
Go言語のフレームワークRevelの紹介とサービスにおける活用事例
Go言語のフレームワークRevelの紹介とサービスにおける活用事例
Último
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Último
(7)
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Yet another use of Phalcon
1.
Yet another use
of phalcon ⾮非公式なPhalconの使い⽅方 株式会社ソニックムーブ
2.
About me Yuji Iwai(鰯) @104 株式会社ソニックムーブ
2012年年2⽉月⼊入社 アプリケーション開発&インフラ構築とかを⽣生業にしてます ⾔言語: PHP(3y)/Perl(7y)/Python(1y)/Objective-C(1y) フレームワーク: symfony1.4/Silex/Codeigniter Phalcon歴: 1年年ちょっと 社内で最初にPhalconを導⼊入した⼈人
3.
株式会社ソニックムーブについて 場所:神楽坂 徒歩3分くらい • ソーシャルゲーム •
モバイルアプリ • 受託開発 いろいろやってる
4.
Phalconを使ってるサービス その他にも アプリバックエンドや 受託案件等多数で採⽤用 たぶん10プロジェクト 以上で使ってると思う
5.
導⼊入の経緯 2013年年初頃 AWSをソーシャルゲームに導⼊入をはじめた ソーシャルゲームを AWS:c1.mediam で運⽤用開始 CPU使⽤用率率率低いのに
なんか レスポンス遅くなる Apacheの並列列数増やしたいけどメモリ⾜足りない 1プロセス100MB以上使ってる CPU使い切切ってないのに m1.large に移⾏行行 最低コストが上がる EC2を使い切切りたい!!
6.
導⼊入後 • メモリに起因したパフォーマンス劣劣化は発⽣生し てない • CPUがボトルネックになる(健全) –
もしくは外部リソースがボトルネック • プロセスあたり30MBになった • EC2: t1.micro/m1.small でもそこそこの性能 が出る、最近は t2 系に移⾏行行中 何よりフレームワークのパフォーマンス改善が必 要なくなった
7.
サーバ構成について App – Nginx +
php-fpm – PHP v5.4 (Non APC) – Phalcon v1.3.1 – Memcached – fluentd Worker – Upstart – start-stop-daemon DynamoDB, SQS, SNS, RDS, ElastiCache(Redis)
8.
使いはじめて不不満だったこと • 設定を ini
じゃなくてYAMLで書きたい • RoutingもAnnotationじゃなくてYAMLがいい • Composer使えるかな • Volt が … coredump ↓↓↓↓↓ 社内で普及させるには乗り換えやすくしたい Symfony1.4 → Phalcon レガシー → モダン
9.
ソニックムーブでPhalconを使うときの 標準的なアレコレ
10.
ディレクトリ構成
11.
PSR-0 準拠でシンプル化 ComposerのAutoloaderで メリット Phalconの registerNamespace
とか不不要 本来の推奨構成に沿ってないので⾮非推奨…
12.
RoutingをYAMLで定義 社内向けに作った ライブラリだけど、 近いうちに公開します
13.
ServiceProviderを実装 Laravel や Silex
などで実装されている ServiceProviderをPhalconで実装できるようにした メリット – ライブラリの導⼊入が簡単になった – だれでも、すぐに使い始められるようになった – DI Componentの⽣生成プロセスを隠蔽 – Componentを登録して設定するだけ – 設定の使いまわしができるようになった デメリット – ⽣生成プロセスがServiceProviderに依存 – 設定の複雑化
14.
Applicationを拡張 Applicationクラスへ registerメソッドの追加 Phalconのhandleを overrideして、 boot処理理を追加するだけ
15.
ServiceProviderInterfaceを定義
16.
CacheServiceProviderの例例
17.
ServiceProviderの使い⽅方
18.
ServiceProviderの使い⽅方 さらにこの設定を YAMLから読み込むように 変更更して index.php は シンプルに index.php
は Component の登録と 設定(依存性)の注⼊入だけ
19.
ServiceProviderがやたら増えた ServiceProviderの実装は簡単なので、やたら増えた – database-service-provider – volt-service-provider –
cache-service-provider – aws-service-provider – gaufrette-service-provider – elasticsearch-service-provider などなど… 外部ライブラリを使うときは、まず ServiceProvider をつくってしまう、⾮非公式だけどオススメ
20.
コントローラーで気をつけるべきこと • redirect したら、return
しろ – LocationとStatusCodeが設定されるだけ • Routeは後に追加されたものから評価される • APIを実装するときは – app->useImplicitView(false) もしくは、 response->setContent($content) したものを明 ⽰示的に return する
21.
モデルで気をつけるべきこと • useDynamicUpdate, keepSnapshots
は true にすべし – Updateクエリに全てのフィールドが⼊入っている • 1アクセス内での2回⽬目の save/update は気をつけろ – snapshot は、SELECTのタイミングでしか⼊入ってない • save/update/delete の返り値はちゃんと確認すべし – model->getMessages() もしくは、transaction->getMessages() に エラーが⼊入っている • データベースからデータ取得は⽂文字列列 – これはPDOの仕様に基づくもの PDO::ATTR_STRINGIFY_FETCHES => false, PDO::ATTR_EMURATE_PREPARES => false など適切切に 設定する必要がある • 厳密なデータの影響件数は $connection->affectedRows()
22.
502 Bad Gateway 多くの場合
Volt テンプレート内での問題が原因 • テンプレートのパースが正常にできなかった – ある程度度はパースエラーが出る • Null⽂文字列列を扱えない関数へNullを渡した – 本来、Fatal Error としてエラーが出るがテンプ レート上で発⽣生すると Core dump して死ぬ テンプレートへのNullは排除すべし
23.
学習コストについて • ドキュメントが英語だから分からん → サンプルコードから読み解くべし •
フレームワークのソースがC⾔言語だから分からん → ⾷食わず嫌いはよくありません、まずは⾒見見てみましょう → C⾔言語知らない⾃自分でも、なんとなく意図は読めた → 有志でPHPの実装してる⼈人がいるので⾒見見⽐比べてると 慣れてくる https://github.com/scento/phalcon-php • core dumpした!! → 多くの場合において渡している引数やその値に問題が 多いです、実装を読みつつ、呼び出し⽅方法などで 回避できることが多いです
24.
社内への普及について Phalconは⾃自由度度の⾼高い フレームワーク まずは社内⽤用のスケルトンを 作ることをお勧めします 実際、スケルトン作ったら 普及が加速した気がします
25.
社内向けスケルトンについて phalcon-devtoolsも良良いですけど 弊社では composer create-project create-project
のスケルトン作成については 本題から話しが逸れるので割愛しますが… オススメです
26.
ご清聴ありがとうございました Phalcon + AWS
で仕事をしたい エンジニア募集中 http://www.sonicmoov.com/recruit/
Descargar ahora