functionactionArticle(){$open_sites= Yii::$app->getDb()->createCommand("select indicator from {{%site}} where status = 1 order by id asc")->queryAll();if(empty($open_sites)){return0;}foreach($open_sitesas$open_site){$indicator=$open_site['indicator'];$articles= Yii::$app->getDb()->createCommand("select id, heat from {{%article_{$indicator}}} order by id asc")->queryAll();if(empty($articles)){continue;}$es_params=['index'=>$indicator,'type'=>'doc'];$body=[];foreach($articlesas$article){$article_id=$article['id'];$body[]=['update'=>['_id'=>"article_{$article_id}"]];$body[]=['doc'=>['heat'=>$article['heat']]];if(count($body)>=2000){$es_params['body']=$body;// file_put_contents('es_bulk.log', print_r($es_params, true));die;
Yii::$app->elasticsearch->client->bulk($es_params);$body=[];}}if(!empty($body)){$es_params['body']=$body;
Yii::$app->elasticsearch->client->bulk($es_params);}}return0;}