我正在尝试使用 App Engine 的 Memcache 对我们在 Compute Engine 下运行的服务器进行测试。目前我们只有几个 VM 实例在我们调用的地方运行 Memcache:
$memcache->addServer('memcache', 11211);
引用每个服务器。查看 Google 的示例代码,它没有提及我们应该调用什么服务器。我试图从他们的文档中测试以下代码,但它在创建对象时出错。我知道我可能必须包含一个类,但它没有提到文档中的任何内容或要调用的服务器。谁能帮忙?
<?php
header('Content-Type: text/plain');
echo "Setting Value\n";
$memcache = new Memcached;
echo "Get who value<br>";
$who = $memcache->get('who');
echo 'Previously incremented by ' . $who . "\n";
$memcache->set('who', 'PHP');
$count = $memcache->increment('count', 1, 0);
echo 'Count incremented by PHP = ' . $count . "\n";
最佳答案
Google App Engine 提供托管的 Memcache 服务,而 Google Compute Engine 不提供。
在 App Engine 上,运行在 App Engine 上的应用会自动连接到服务器,这意味着您无需在应用中指定主机/端口。
但是,在 Compute Engine 上,如果您想使用内存缓存,则需要运行自己的 memcached服务器,与您的应用程序位于相同或不同的 VM 中,并在您的 PHP 客户端中指定其主机/端口。
PHP 提供了两个类来连接到 memcached:
每个都提供了一种方法来指定要连接的服务器,例如,
但是运行这些内存缓存服务器仍然取决于您。
关于php - 使用 PHP 在 Google Compute Engine 中使用内存缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30134733/