Phalconを使う前に知っておきたい、各機能とインストール方法

2014年5月30日(金)
廣瀬 一海

はじめに

PHPは最も使われているサーバーサイドスクリプト言語の一つですが、スマートフォンアプリ開発の現場などにおいても、サーバーサイド言語にPHP5.5とPHPフレームワークのPhalconを使った製品開発に使用されています。
今回は実際に開発で今まで得られた経験なども交えつつ、Phalconを使った具体的な開発についてご紹介します。

対象となる読者

  • PHPの一般的な知識をお持ちの方
  • CakePHPなど、他のPHPフレームワークを用いた開発の経験をお持ちの方

フレームワークを使うメリット

今回ご紹介するPhalconをはじめとして、PHP開発ではフレームワークを用いた開発をよく見かけます。
もちろん、PHPのみでコーディングを進めることもできますが、開発フレームワークを導入する利点としては

チーム開発が楽になる
MVC分離やコントローラー単位などチーム開発を行う上で分業しやすくなる
予め用意されたコードにより生産性が向上する
フレームワークではデータベースアクセスやセッション管理など、「Webアプリケーション」に共通して必要となる機能が大抵の場合既に準備されています、フレームワークを用いてこれらの機能を毎回実装する必要が無くなります。
拡張、変更に対応しやすくなる
各ライブラリの管理や拡張方法は、フレームワーク毎に方法が準備されているケースが大抵で、拡張、変更を一貫したルールで行えます。

これらのメリットから、ある一定の規模を超える「Webアプリケーション」の開発であれば、フレームワークを使った開発はとても便利で有用です。

Phalconとは

Phalconは、PHP5.3以降向けに開発されているオープンソース(New BSD License)のWebアプリケーションフレームワークです。プラットフォームはWindows/Mac/LinuxのPHPに対応しています。

開発サイトにも「The fastest PHP Framework」と銘打つ程の省メモリ、高速動作が特徴の一つです。
一般的なフレームワークで用意される大抵の機能をPhalconは実装しています。

Phalconのサイト画面

Phalconフレームワークのアプローチ

通常、PHP言語のフレームワークはPHPで記述されていることがほとんどですが、PhalconはPHPエクステンションとしてC言語で実装しています。
結果を鵜呑みにはできませんが、ドキュメントに記載されているベンチマークでは、RequestからResponseまでの速度に定評のあるCodeigniterの1.5倍から2倍程度の結果を出しており、メモリ使用量に関しても30%程度メモリ消費が少ないことが分かります。
サーバー1台あたりの性能は、高トラフィックが発生するソーシャルゲームやスマートフォン向けネイティブアプリのREST APIにはとても重要な要素でもあります。

Framework Benchmarks(クリックで拡大)

反面、フレームワークがPHPエクステンションとして実装されていることから、フレームワークそのものに由来するバグなどの修正はC言語で行うケースも考えられますし、その際はWebサーバーに再度PHP拡張をインストールする点がデメリットといえるでしょう。

アイレット株式会社 cloudpack事業部 シニアソリューションアーキテクト

生業はインフラエンジニア。小規模から大規模なまで日々様々なインフラを構成しています。好きなクラウドはMicrosoft Azure、日頃の業務はAmazon Web Services、という感じにクラウド漬けの毎日を過ごしています。​
仕事の傍ら、勉強会やコミュニティ(日本Azureユーザー会)コアメンバとして活動しています、マイクロソフトのオープンソース戦略にとても共感し、Microsoft MVPとして情報発信や交流を行っています。
Microsoft MVP Microsoft Azure

cloudpack公式サイト:http://cloudpack.jp

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています