在mod_perl下创建持久memcached连接的最佳方法是什么?



我知道有一个像Apache::DBI这样的模块,它允许在mod_perl下使用持久连接到数据库。

有简单的方法来做这样的东西吗?你能推荐一些memcached池包吗?

如果您查看Apache::DBI的源代码,您将看到它只是将数据库句柄放在包的顶部的词法作用域中。对于Memcached来说,这样做很容易。创建一个新包,顶部为my $memcached;,然后使用init()方法创建连接并将其保存在该词法中。然后在代码中使用getConnection()方法获取连接。该方法需要检查连接是否仍然有效,并在需要时重新连接。

最后,设置PerlChildInitHandler来调用init()(参见Apache::DBI connect_on_init())。

最新更新