Symfony

キャッシュとパフォーマンス

Cache pool、adapter、tag、キャッシュ無効化、HTTP cache、ESI、Varnish統合

20 面接問題·
Mid-Level
1

SymfonyはPSR-6キャッシュシステムを実装するためにどのインターフェースを使用しますか?

回答

SymfonyはCacheItemPoolInterfaceを通じてPSR-6標準を実装します。このインターフェースは、キャッシュアイテムを管理するためのgetItem()、hasItem()、deleteItem()、save()、clear()メソッドを定義します。SymfonyのCacheコンポーネントは、このインターフェースをすべて実装する複数のadapter(Redis、Memcached、Filesystemなど)を提供し、他のPSR-6互換のPHPライブラリとの相互運用性を保証します。

2

開発環境向けにSymfonyで設定されているデフォルトのキャッシュadapterは何ですか?

回答

開発環境では、Symfonyはデフォルトでキャッシュをメモリに保存するArrayAdapterを使用します。このキャッシュはリクエスト間で永続化されないため、コードを変更した際に古いキャッシュの問題を回避でき、開発に最適です。本番環境では、より高いパフォーマンスを得るためにRedisやMemcachedのような永続的なadapterの使用が推奨されます。

3

Symfonyの設定でカスタムcache poolを作成するにはどうすればよいですか?

回答

カスタムcache poolは、設定のframework.cache.poolsキーの下で定義します。各poolは、そのadapter、デフォルトの有効期間(default_lifetime)、そして必要に応じてtagsを指定できます。たとえば、RedisAdapterを使用した'app.cache.products'poolにより、製品のキャッシュを他のデータと独立して管理でき、対象を絞った無効化が容易になります。

4

値がキャッシュにない場合に計算用のcallbackとともにキャッシュから値を取得するには、どのメソッドを使用しますか?

5

Symfonyにおけるcache tagsの主な利点は何ですか?

+17 面接問題

次の面接に向けてSymfonyをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める