哪种方式是使用这三种方法之一实现快速散列/会话存储的最佳方法?
方式1:
在MySQL中创建一个内存表,用于在创建条目时存储哈希值和时间戳. MySQL事件会自动删除超过20分钟的所有条目.这应该非常快,因为所有数据都存储在内存中,但连接到数据库服务器的开销可能会破坏这种好处.
方式2:
我创建一个以散列作为文件名的空文件,并创建一个自动删除超过20分钟的所有文件的cronjob.由于HDD上的所有读取操作,这可能变慢.
方式3:
由于这将与PHP相关,我们使用Zend Framework,我可以使用Zend_Cache并以20分钟的生存时间存储哈希.
我不想为此使用Memcached或APC,因为我觉得这对于一些小哈希来说是一个很大的开销.
你有类似场景的经验吗?我将非常感谢您的经验和解决方案.
解决方法:
如果性能是一个问题,我会默认使用memcached.所有大型互联网站点都依赖于memcached来缓存服务器密集型任务,甚至是会话存储和锁定机制.
如果你问我,Memcached是你要走的路
标签:php,caching,session,hash,performance
来源: https://codeday.me/bug/20190710/1423567.html