MemcachedClient使用其get方法的性能

时间:2013-08-19 04:47:00

标签: java memcached spymemcached

我在memcached中有一些价值,例如500,000。 当我尝试使用其键获取特定值并使用其get方法时。它需要20毫秒,5毫秒等随机时间。有时大约500毫秒。

memcached这么慢吗?或者有什么方法可以改善其性能?我通过以下方式测试时间。我在获取值之前和获取值之后以毫秒为单位打印了系统时间。

 System.currentTimeMillis();
 memcachedClient.get("key");
 System.currentTimeMillis(); 

如果我在memcached中设置了一些值,并尝试在同一次运行中从它们获取值。然后我会得到更多的时间。但如果我将分开完成这些任务,我将获得更少的时间来获取。为什么呢?

1 个答案:

答案 0 :(得分:0)

不,不是那么慢。它只取决于系统的设置方式。

第一个问题是:你的memcached在哪里?它是一个本地memcached(在你执行这个java代码的同一台机器上)还是一个远程memcached? 如果它是远程的,那么你需要知道你的盒子和远程盒子之间的延迟(尽管500毫秒很多)。 另外,在执行java的框上运行了什么,以及运行memcached的框上运行了什么?

memcached很快,因此您的配置存在问题......如果您希望我们帮助您,您需要调查并提供更多信息。

此外,当您使用外部lib(此处为spymemcached)时,请提供其版本(我假设为2.8.12)。有时,特定版本存在已知问题(但这不是这种情况)。