我正在尝试构建以下多面搜索解决方案:
在繁忙的时刻,我们的应用程序必须能够在一小时内处理2000个这些动作。 挑战在于如何尽可能快地读取行和计数。 另外,必须通过多个PHP进程来进行读写。
作为一种解决方案,到目前为止,我选择将这4000种产品价格插入数据库中,并使用查询来获取行数/行的选择:
这种比较并不完全公平,因为对于MySQL,我一直在使用准备好的语句而不是批量插入。 (同样,因为批量插入是一个缺点,并且仅与弹性插入一起使用,可以防止4000个缓慢的HTTP请求。)
即使存储中有400万条记录,MySQL Memory表的性能也似乎不错并且可以接受。但是我对此解决方案的可扩展性和稳定性感到担心。
其他探索的选项是:
我也考虑过不使用数据库的解决方案(PHP中有很多计算/循环),但这远非理想,因为读取和插入4000种产品价格的过程必须在多个PHP过程中完成(用于速度)。
还有什么其他(数据库)解决方案更适合这里?这是关于尽可能快地写入和读取数据的组合。