我目前正在为我的应用程序构建一个缓存组件。它将支持不同的适配器:
对于所有这些,我需要为它们生成缓存密钥。最好的方法是什么?我正在考虑连接函数名称和参数,然后在其上运行md5()
。这是一个好策略吗?
最后,当将对象作为文件缓存到磁盘时,如何组织缓存文件?我有一种感觉,拥有一个缓存文件夹,只是将所有缓存文件丢入其中可能会有相当糟糕的性能。
该应用程序将托管在Linux和Windows服务器上。
答案 0 :(得分:2)
md5()和sha1()都符合您对缓存文件命名的需要,因为它们都具有良好的性能。
将缓存文件保存到文件系统时,可以参考git如何存储其文件。
有用的链接:
基准:http://www.cryptopp.com/benchmarks.html
git如何存储对象:http://book.git-scm.com/7_how_git_stores_objects.html
答案 1 :(得分:-1)