PHP环境下基于文件的缓存
我一直在为一个项目使用,它通常工作得很好。但有几次,它的缓存,即普通的php文件(参见等人),已经被“归零”,即整个缓存文件已经变成了一大块空值 与其试图找出文件变为NULL的原因,我认为最好将缓存策略更改为更具弹性的策略 所以我想知道你是否有什么好主意,什么是好的解决方案;我一直在看,我也在想,我只是把一个序列化数组保存到文件中,而不是像现在这样保存纯php;但我不确定我应该针对什么方法PHP环境下基于文件的缓存,php,caching,Php,Caching,我一直在为一个项目使用,它通常工作得很好。但有几次,它的缓存,即普通的php文件(参见等人),已经被“归零”,即整个缓存文件已经变成了一大块空值 与其试图找出文件变为NULL的原因,我认为最好将缓存策略更改为更具弹性的策略 所以我想知道你是否有什么好主意,什么是好的解决方案;我一直在看,我也在想,我只是把一个序列化数组保存到文件中,而不是像现在这样保存纯php;但我不确定我应该针对什么方法 我很感谢大家对这一技术领域的深入了解,因为我知道从性能的角度来看这是一个复杂的领域。您所描述的似乎是php
我很感谢大家对这一技术领域的深入了解,因为我知道从性能的角度来看这是一个复杂的领域。您所描述的似乎是phpbrowscap中的一个bug。你可以检查是什么引起的 无论如何,phpbrowscap的策略是相对合理的,因为通过将缓存写入PHP文件,它还可以利用操作码缓存
然而,我认为最好的策略是序列化对象,并将其结果放入类似APC的内存缓存中。另一种可能的策略是在扩展中实现功能,扩展总是在内存中。您所描述的似乎是phpbrowscap中的一个bug。你可以检查是什么引起的 无论如何,phpbrowscap的策略是相对合理的,因为通过将缓存写入PHP文件,它还可以利用操作码缓存
然而,我认为最好的策略是序列化对象,并将其结果放入类似APC的内存缓存中。另一种可能的策略是在一个扩展中实现该功能,它总是在内存中。当我想到它时,我可以看到两个php进程交互更新(在我的例子中是创建)时可能出现竞争情况。我想知道一个普通的集群是否足够。当我考虑它时,我可以看到当两个php进程介入更新(在我的例子中是创建)时可能出现的竞争条件。我不知道一只普通的羊群是否足够。