public static function addQueue($blog_id) { $has_not_handle_task = PostsRecommendQueue::findOne(['blog_id' => $blog_id, 'status' => -1]); if ($has_not_handle_task) { return true; } $date_now = date("Y-m-d H:i:s"); $model_blog_recommend_queue = new PostsRecommendQueue(); $model_blog_recommend_queue->blog_id = $blog_id; $model_blog_recommend_queue->status = -1; $model_blog_recommend_queue->updated_time = $date_now; $model_blog_recommend_queue->created_time = $date_now; return $model_blog_recommend_queue->save(0); }
public function actionQueue() { $posts_queue_list = PostsRecommendQueue::find()->where(['status' => -1])->orderBy("id asc")->limit(6)->all(); if (!$posts_queue_list) { return $this->echoLog("no data need to handle"); } $date_now = date("Y-m-d H:i:s"); foreach ($posts_queue_list as $_item) { sleep(1); $this->echoLog("--------queue_id:{$_item['id']}---------"); $tmp_ret = RecommendService::calculateRecommend($_item['blog_id']); $_item->status = $tmp_ret ? 1 : 0; $_item->updated_time = $date_now; $_item->update(0); } return $this->echoLog(" Done "); }