最近はもっぱらSymfony2の勉強に明け暮れているので、成果をメモ代わりに説明していこうかと。 今回はSecurityコンポーネントについて説明していきます。 Securityコンポーネントでは認証処理を自動で行ってくれます。 各ユーザーには権限(role)が最低でも1つ必要みたいです。 とりあえず今回はBasic認証とフォームからの認証の例を下記に記述したいと思います。 Symfony2は既に設置されているものと考え、インストール方法などは省きます。 Securityコンポーネントの概要については下記を参考にどうぞ。 http://docs.symfony.gr.jp/symfony2/book/security.html 実行環境として、とりあえず下記のコマンドを実行してAppTestBundleの作成済みとして後述します。 $ php app/console generate:bu
March 04, 2009 > June 04, 2009 Montreal / Canada - PHPQuebec Conference - 2009
Warning: This blog post was written a long time ago and might be no longer relevant. Symfony Console component enables us to create commands in PHP. It does all the nasty work of handling input and output. Installation You can either install it from the Symfony PEAR channel or grab it directly from github. For the purpose of this article we'll clone the sources to the vendor/ directory of the proj
symfony 1.xでシステムを開発する場合、結構手放せないのがタスクの仕組みです。組み込みのコマンドはもちろん、バッチ処理から、ちょっとしたヘルパータスクなど、私はシステムを開発する上で結構使っています。 このタスクシステム、Symfony2ではどうなっているのでしょう? 用語としては、「タスク」ではなく「コマンド」という用語になっているようです。 コマンドはバンドル単位で作る symfony 1.xでは、symfonyコアのタスク、プラグインのタスク、プロジェクトレベルのlib/taskにあるタスクが自動的に読み込まれていました。 Symfony2では、「アプリケーション」という概念が変更され、プラグインに近い「バンドル」という単位でアプリケーションも管理されるようになります。 そして、このバンドルという単位でコマンドが読み込まれます。 ※Symfony2のコアもバンドルの1つで、他
この記事は、Symfony アドベントカレンダー 2010 に参加しています。 Symfony Advent 2010 : ATND http://www.symfony.gr.jp/adventcalendar/2010 さて、今回はいきなりですが、Symfony2 と Doctrine2 を使って計測してみます。 この計測を行うには、以下のような準備が必要なので、それは日を改めて記事にしたいと思います。 Symfony2/Doctrine2 環境でのエンティティクラスの準備 Symfony2 でコマンドの作成 今回は、上記準備は整っているものとして、計測に使ったコード部分のみを掲載します。 環境 使用したバージョンは以下です。 Symfony2 PR4 Doctrine2 ORM BETA4 ※Symfony2 Sandbox に付属している Doctrine2 ORM は BETA4
Symfony 2 is mainly used to create web application, however, sometimes you need to extend your app and need a command line tool to help perform tasks around the application. With symfony 1.4.x these were called tasks and it was possible to create a skeleton by using the symfony generate:task task. Symfony 2 does not yet provide a tool for this yet, but creating a console command is actually quite
「 labs.nazone.info 」のページは、ドメインが無効な状態です。 ウェブサイト管理者の方はこちらから変更・更新を行ってください。 「 labs.nazone.info 」is Expired or Suspended. The WHOIS is here.
この記事は、Symfony アドベントカレンダー 2010 に参加しています。 Symfony Advent 2010 : ATND http://www.symfony.gr.jp/adventcalendar/2010 前の記事: SymfonyEventDispatcher→Symfony2(PR4)EventDispatcherの変更点 - * yuchimiriのにっき * DIコンテナの起動処理を簡単にまとめます。DIコンテナがどういったものかわかっており、Symfony2のバンドルやカーネルといった名称と役割が何となくわかっている方が対象です。 そもそもDIコンテナの起動とは、DIコンテナにパラメーター定義とサービス定義が行われる処理をさします。最初におおまかな流れを見てみましょう。 KernelがDIコンテナオブジェクトを生成 すべてのバンドルから エクステンション を抜き
https://www.hubspot.com/state-of-marketing · Scaling relationships and proving ROI · Social media is the place for search, sales, and service · Authentic influencer partnerships fuel brand growth · The strongest connections happen via call, click, chat, and camera. · Time saved with AI leads to more creative work · Seeking: A single source of truth · TLDR; Get on social, try AI, and align your sys
昨日、Symfony2.0がリリースされたので、早速パフォーマンス計測しました。 Symfony2.0もCake2betaと同じデータ量のtableにアクセスして、同じ1レコードを取得して表示する画面を計測しました。 計測は下記のように同じツール、同じオプションを使ってます。 siege -c 10 -b -t 3S 詳細なテスト環境は、下記ブログに書いてあります。データ量なども一緒。 http://cake.eizoku.com/blog/2011/07/27/performance-check-of-cakephp1-3-11-and-cakephp2beta/ 計測は何回か実行した中央値ぐらいの結果をピックアップしました。ですので両方ともキャッシュファイルは生成された状態の計測となっています。 [追記] 後藤さんからSymfony2のpullリクエストもらったので、再度計測しました。
最近、正式リリースされたばかりだから、サンプルアプリケーションばっかりつくってると、この問題に直面してる人が多数いるようで、日本語での情報がなかったので書き留めておこうかと思います。 健全なアプリケーションを開発している皆様は、Debug Toolbarをフル活用して、日常的に開発しているかと思います。 ちなみに、コレのことです。 さて、自分で新たにBundleをつくって、開発をはじめたところ、「あれっ、Toolbarがでないな。」ってなったときにチェックする項目をあげてみます。 app_dev.php経由でアクセスしていないdev環境でないとToolbarは使えません。app_dev.php経由でアクセスしてください。 config_dev.ymlでtoolbarが有効になっていない以下のような感じで有効にしてください。 web_profiler: toolbar: true bodyタ
自分でも毎回分からなくなるのでメモ・・・。 Actionでは、レスポンスにsetSharedMaxAge()とsetPublic()をセット <?php $response = $this->render('HelloBundle:Hello:index.html.twig', array('rand'=>rand())); $response->setSharedMaxAge('10'); $response->setPublic(); return $response; テンプレートでは、standaloneをtrueに {% render "HelloBundle:Hello:news" with {}, {'standalone': true} %} config.ymlでESIを有効に app.config: esi: enabled: true routing.ymlでESI用
Symfony2.0で採用されるESI(Edge Side Includes)に関して調べてみた。 どうやらキャッシング技術ではあるようだが、そもそもこのアイディアは、サロゲート(キャッシュサーバ)で用いられる技術みたいだ。 何か不思議な感じがするので、その考察結果をまとめてみる。 ■目次 ESIとは? SymfonyにおけるESI ESIを利用する本当の利点 まとめ ■ESIとは そもそもESIとは、どのような技術なのだろうか? ESIを調べると、そこには、「サロゲート」や「キャッシュサーバ」などと言う言葉が目立つ。 また、XSLなどのように、XMLの拡張言語であり、<esi:try>などというように用いることができるとある。 実際にHTML内に、このESIタグを入れても動作するわけもなく(ブラウザが対応しているわけではないため)、はてはて?となってしまう。 では、どうやって用
The document discusses caching strategies for Symfony applications. It shows how Symfony 2 allows caching responses on the edge through features like setting cache expiration headers. Benchmarks are presented demonstrating that Symfony 2 with caching enabled is much faster (up to 85 times faster) than Symfony without caching for various levels of concurrent users. The document advocates using Symf
PHPフレームワークの速度比較では、HelloWorldを表示するのみの単純なアプリを用いた計測を元に比較表が作られることが多いです。特に後発のフレームワークは分かりやすい特徴付けとして速度をアピールする傾向にあるため、その比較表を元に N倍速いというアピールをしています。 PHPフレームワークを使うということは、DBまで絡めたWebアプリを作ることがほとんどなため、HelloWorldアプリの比較よりは、DBからレコード取得して表示するまでの処理速度を比較したほうがより現実に近い指標になると思います。特にCakePHP1系ではDBのデータ取得も独自ドライバになっていますし、モデルの処理も重いのでそこまで含めて他と比較したほうが良いと思ってます。 今回はDBから1レコード取得して表示するという簡単なアプリで各フレームワークの速度を評価しました。フレームワークに備わっているViewキャッシュ
OSC 2010 Nagoyaでのセミナー資料 Symfony2のキャッシュ(ESI)や、Symfony2の処理の流れなどについてRead less
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く