Exemple #1
0
 public function incFreCap($flight)
 {
     $visitorId = $this->getVisitorId();
     $today = date('Y_m_d');
     $redis = new RedisBaseModel(env('REDIS_HOST', '127.0.0.1'), env('REDIS_PORT_2', '6379'), false);
     $cacheKey = "Tracking:FrequencyCap_{$flight->id}_{$visitorId}_{$flight->event}";
     $cacheField = $today;
     $cacheKeyTime = "Tracking:TimeFrequencyCap_{$flight->id}_{$visitorId}_{$flight->event}";
     $redis->hSet($cacheKeyTime, $cacheField, 1);
     $todayFreCap = $this->getTodayFreCap($flight);
     if (!$todayFreCap) {
         $redis->hSet($cacheKey, $cacheField, 1);
         return $redis->expire($cacheKey, CACHE_1D);
     } else {
         return $redis->hIncrement($cacheKey, $cacheField);
     }
 }