我使用NHibernate和Memcached作为二级缓存,并一直对cache.use_minimal_puts
配置选项感到好奇。NHibernate和Memcached - 应use_minimal_puts被启用?
根据文档:
hibernate.cache.use_minimal_puts的:优化第二级缓存操作,以尽量减少写操作,而成本更频繁的读取 。此设置对集群 缓存最为有用,并且在Hibernate3中,对于集群缓存 实现默认启用。
要清楚,我没有在群集环境中运行Memcached,但它确实在远程计算机上运行。另一个需要考虑的因素可能是Memcached的读写速度是否有很大差异。
在这种情况下启用cache.use_minimal_puts
会受益吗?
“更频繁读取的成本” - 也读了网络开销意味着,对不对? –
@PlínioPantaleão - 好点..也许更好的问题是:写入(很多)比在memcached读取更昂贵? – DanP
我没有任何证据支持我的意见,但我不相信这一点。这仅在分布式环境中才是正确的,因为写入可能会导致您在其他机器上丢失缓存。如果在单机情况下这是真的,我认为他们会做到这一点:) –