2017-06-28 30 views
0

Symfony 3のキャッシュコンポーネントを使用するベストプラクティスは何ですか?ベストプラクティスSymfony 3のキャッシュコンポーネント

単純な例:異なるページ(コントローラ、FormType、Twig関数、リスナーなど)からgetCategoryById(リポジトリ内)を呼び出すと、データがキャッシュされていないことを確認する方法は?

私は、リポジトリ内のキャッシュコンポーネントを呼び出すことはできませんし、私が書き込みをしたいし、すべてのページ(isHint ...)で同じコードを複製しません。

ベストプラクティスは何ですか?すべてのページとリポジトリの間に中間キャッシュサービスを作成しますか?

はどうもありがとうございました:)

答えて

0

だから、これは100%にあなたの質問に答える場合、私は知らないが、非常に良いが、あなたが異なる部分をキャッシュする教義のためのいくつかのキャッシュ・プロバイダーを持ってSNCRedisBundleです。ドキュメントの短い例。

snc_redis: 
    ... 
    doctrine: 
     metadata_cache: 
      client: cache 
      entity_manager: default   # the name of your entity_manager connection 
      document_manager: default  # the name of your document_manager connection 
     result_cache: 
      client: cache 
      entity_manager: [default, read] # you may specify multiple entity_managers 
     query_cache: 
      client: cache 
      entity_manager: default 
     second_level_cache: 
      client: cache 
      entity_manager: default 

https://github.com/snc/SncRedisBundle/blob/master/Resources/doc/index.md

は、それがうまく働いているし、おそらくあなたはそれを使用することができます。

+0

ありがとう:)しかし、私は学び、理解したい、束を使用するだけではありません。 :)可能であれば、Symfonyのコンポーネント^^ –

+0

しかし、なぜ毎回ホイールを再発明するのですか?そのバンドルを使用して、問題をどのように解決したかを見てください。それは最も簡単な方法です。 – Stony