Привет у меня есть приложение с рамки PHP Zend, я настроить учетную AWS ElastiCache, как следовать на моем ZEND приложениеPhp Zend с AWS ElastiCache
Bootstrap.php:
protected function _initMemcache()
{
if (extension_loaded('memcache'))
{
// Configure caching backend strategy
$cacheBackend = new Zend_Cache_Backend_Memcached(
array(
'servers' => array(
array(
'host' => 'xxxx.yyyy.qqq.rrr.cache.amazonaws.com',
'port' => '11211'
)
// Other servers here
),
'compression' => true,
'compatibility' => true
)
);
// Configure caching frontend strategy
$cacheFrontend = new Zend_Cache_Core(
array(
'caching' => true,
'cache_id_prefix' => 'MyApp_',
'write_control' => true,
'automatic_serialization' => true,
'ignore_user_abort' => true
)
);
// Build a caching object
$memcache = Zend_Cache::factory($cacheFrontend, $cacheBackend);
Zend_Registry::set('cache', $memcache);
} else {
// Handle a non-existent extension here
}
}
И на мой контроллер:
public function fetchfrontAction()
{
$cache = Zend_Registry::get('cache');
$catid = $this->_getParam('catId');
$business = new Application_Model_Mapper_BusinessMapper();
$businessReviewMapper = new Application_Model_Mapper_BusinessReviewsMapper();
$count = 5;
if (!$result = $cache->load('dataset')) {
$result = $business->getFetchByCategory($catid,$count);
for ($i = 0; $i < count($result); $i++) {
$result[$i]['business_name_url'] = $result[$i]['business_url'];
$userBusinessReviews = $businessReviewMapper->getBusinessReview($result[$i]['business_id'],1);
if(!is_null($userBusinessReviews)){
$result[$i]['user_business_reviews'] = $userBusinessReviews;
}
$userImg = $this->view->getLoginUserImage(
$result[$i]['user_business_reviews'][0]['social_id'],
$result[$i]['user_business_reviews'][0]['login_type'],null,null,square);
if (!is_null($userImg)) {
$result[$i]['user_img'] = $userImg;
}
}
$cache->save($result,'dataset');
}
$this->_helper->json($result);
}
Теперь проблемы это без ошибок, как я могу проверить, действительно ли он кэшируется с AWS? Есть ли способ сравнить, как долго он работает с кешем и без него? Спасибо