使用Memcache存储连接对象

时间:2009-09-15 11:53:10

标签: sql connection memcached connection-pooling

建议将SQL Connection对象存储在memcache中吗?

3 个答案:

答案 0 :(得分:3)

我不会在任何类型的缓存中存储连接对象。通过连接池打开,连接非常快,因此无需缓存它。

答案 1 :(得分:1)

在PHP中,这甚至都不可能。如果您尝试序列化数据库连接处理程序或文件处理程序,那么您会感到惊讶。

$f = fopen('handler-serialize.php', 'r');
var_dump(serialize($f));
fclose($f);

这个的输出是:

string 'i:0;' (length=4)

我不知道在其他语言中如何处理这个问题,但我认为所有语言都不允许您将处理程序存储到以后可能不存在的资源中。当存储的值在以后被唤醒时。< / p>

为了回答你的问题,没有不建议在memcached中存储Connection对象。

答案 2 :(得分:0)

您是否意识到您是否可以在连接后缓存连接?

缓存: 连接到memcached,获取连接

没有缓存: 连接数据库

你无法绕过连接,所以我真的不明白你为什么要这样做。