我正在将Memcached添加到我的应用程序中,尽管有一些非常令人困惑的设置和明显的重复,但它似乎有效,如果只是勉强。
然后我需要在使用
进行一些更改后清除缓存./ bin / console cache:clear --env = dev(或= prod)
那是我收到错误的时候:
[Symfony的\元器件\缓存\异常\ CacheException]
Memcached> = 2.2.0是必需的
嗯,根据phpinfo(),我安装的Memcached版本是3.0.4,所以我不确定该错误来自哪里。
编辑:添加我在尝试缓存时也遇到了以下错误:清除命令:
PHP致命错误:第6行的/Users/user/Sites/Symfony1/vendor/doctrine/doctrine-cache-bundle/Tests/Functional/Fixtures/Memcached.php中找不到类'Memcached'
如上所述,配置一点也不清楚。有明显的重叠,我对SO和其他地方的研究没有多大帮助。
另外,我在Controller上使用memcached适配器,如下所示:
use Symfony\Component\Cache\Adapter\MemcachedAdapter;
来自Symfony's cache component,似乎不需要在config.yml上进行任何配置。
在任何情况下,这里都是明智的配置缓存。:
/app/config.yml
framework:
cache:
app: cache.adapter.memcached
default_memcached_provider: "memcached://127.0.0.1:11211"
...
orm:
...
entity_managers:
default:
metadata_cache_driver: memcached
result_cache_driver:
type: memcached
host: 127.0.0.1
port: 11211
instance_class: Memcached
query_cache_driver: memcached
doctrine_cache:
aliases:
mem_cached_meta: my_memcached_cache_metadata
mem_cached_query: my_memcached_cache_query
mem_cached_result: my_memcached_cache_result
providers:
my_memcached_cache_metadata:
type: memcached
namespace: metadata_cache_ns
aliases:
- mem_cached_meta
my_memcached_cache_query:
type: memcached
namespace: query_cache_ns
aliases:
- mem_cached_query
my_memcached_cache_result:
type: memcached
namespace: result_cache_ns
aliases:
- mem_cached_result