2015-06-06 66 views
0

我正在开发高负载应用程序,并且正在考虑是否使用memcache或mysql内存表。表格很小,不超过30-40行,在大多数情况下,应用程序一次读取它们。 (如select * from table并获取所有行)可能是某人有关于在这种情况下memcache有多好的信息?优化:memcached vs mysql内存

+0

为什么不写一个包含的数组?不需要memcache,不需要建立mysql连接 - 不需要任何事情 - 性能是最好的。除非数据经常变化,否则根本不是问题。 – Fluffeh

+0

当然,大部分数据只能由我自己修改,并保存在配置文件中。我谈到数据,这些数据由用户改变。 – Vasya

+0

您是否确定提取整个40行表格是该应用程序的最慢部分?我们正在讲毫秒。 –

回答

0

因此,memcached更好更快! 但是: memcached可以删除旧密钥,如果ttl过期或小尺寸设置其他密钥。

的情况可能是:

  1. 在第一次请求您设置键值到memcached的。
  2. 在第二个请求(并行)中,您将另一个键值设置为memcached,并在memcached小内存中保存此键,并且memcacehd删除较早的键(在第一个请求中设置)。

相比Memcached的MySQL的,我会选择MySQL的,因为数据不是在任何情况下被删除。

P.S. Redis - 最好接近。

+0

事实上,我没有使用memcache,而是使用ram文件(我检查了它们,它们的工作速度更快,而且使用ftp客户端查看数据也很容易,只是写了memcache,因为它是众所周知的),所以数据不会过期。 – Vasya