我正在寻找存储和读取与 HTTP 会话 cookie 关联的数据的最快方法。
现在,我们有一个充满文件的目录,文件名是会话 cookie(随机约 150 个字符),内容是二进制 blob,通常只有几个字节 - 有时多达 1 或 2 KB。我们还使用 atime(上次读取时间戳)来查找和删除旧会话数据。
目录中的文件数量可能会飙升至数百万,并且服务器会不断检查文件是否存在,时间是什么,读取/写入它们,当然还有删除/创建它们。我怀疑 ext3 不是这种使用模式的理想方法?
存储此类数据的最佳方式是什么?我们测试了 MySQL,但它比 ext3 慢几个数量级(我假设我们没有做错什么?)。即使只是建立一个连接也比执行典型的文件系统存在/atime/fread 周期要长。
任何有经验的人将不胜感激。管理由不相关的小型数据组成的庞大数据库的最快方法是什么?
我们在高端服务器硬件上使用 PHP 和 CentOS(几乎可以买到最好的钱)。不需要集群/负载平衡,我们正在尝试减少中低流量网站的每个请求延迟。我们没有使用 PHP 的内置会话 API,因为它在我们的情况下不起作用。