您如何在一个流程中临时存储数千个key => value
或key => array
成对的数据.查找key
将在进程内连续完成,并在进程结束时丢弃数据.
我应该使用数组吗?临时MySQL表?或介于两者之间?
这取决于数千个意味着多少,以及数组在内存中的大小.如果你可以在PHP中处理它,你应该这样做,因为mysql的使用在这里产生了一点开销.
但是如果您在共享主机上,或者您memory_limit
在php.ini中受限并且无法增加它,则可以在MySQL中使用临时表.
此外,您可以使用一些简单快速的键值存储,如Memcached或Redis,它们也可以在内存中工作,并且可以快速查找键(Redis承诺O(1)的时间复杂度)