最近、共有ホストから専用ホストに切り替えて、より多くの監視/制御が可能になりました。切り替える前からメモリ使用量が非常に多いという問題をデバッグしようとしています。Instagram フィード/API へのサブスクリプションである特定のスクリプトに絞り込んだと思います。これは codeIgniter フレームワークで動作します。
これは私のプロセスのスクリーンショットです。非常に高い httpd メモリ値に注意してください
これがcodeIgniterのコントローラーです
class Subscribe extends CI_Controller {
function __construct() {
parent::__construct();
$this->instagram_api->access_token = 'hidden';
}
function callback()
{
//echo anchor('logs/activity.log', 'LOG');
$min_id = '';
$next_min_id = '';
$this->load->model('Subscribe_model');
$min_id = $this->Subscribe_model->min_id();
echo $min_id;
$pugs = $this->instagram_api->tagsRecent('tagg','',$min_id);
if($pugs){
if (property_exists($pugs->pagination, 'min_tag_id')) {
$next_min_id = $pugs->pagination->min_tag_id;
}
foreach($pugs as $pug) {
if(is_array($pug)) {
foreach($pug as $media) {
$url = $media->images->standard_resolution->url;
$m_id = $media->id;
$c_time = $media->created_time;
$user = $media->user->username;
$filter = $media->filter;
$comments = $media->comments->count;
$caption = $media->caption->text;
$link = $media->link;
$low_res=$media->images->low_resolution->url;
$thumb=$media->images->thumbnail->url;
$lat = $media->location->latitude;
$long = $media->location->longitude;
$loc_id = $media->location->id;
$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru'));
$data = array(
'media_id' => $m_id,
'min_id' => $next_min_id,
'url' => $url,
'c_time' => $c_time,
'user' => $user,
'filter' => $filter,
'comment_count' => $comments,
'caption' => $caption,
'link' => $link,
'low_res' => $low_res,
'thumb' => $thumb,
'lat' => $lat,
'long' => $long,
'loc_id' => $loc_id,
);
$this->Subscribe_model->add_pug($data);
}
}
}
}
そしてここにモデルがあります....
class Subscribe_model extends CI_Model {
function min_id(){
$this->db->order_by("c_time", "desc");
$query = $this->db->get("pugs");
if ($query->num_rows() > 0)
{
$row = $query->row();
$min_id = $row->min_id;
if(!$min_id){
$min_id ='';
}
}
return $min_id;
}
function add_pug($data){
$query = $this->db->get_where('pugs', array('media_id'=>$data['media_id']));
if($query->num_rows() > 0){
return FALSE;
}else{
$this->db->insert('pugs', $data);
}
}
}
//============================編集================== =====//
一部のサービスを fast-cgi に変換したところ、メモリ使用量が大幅に減少したように見えますが、CPU の増加に気付きました。専用サーバーに切り替えることで頭痛がはるかに少なくなり、物事がはるかに簡単になることを望んでいましたが、これまでのところ悪夢でした. 私は噛むことができないほど噛んでしまったのではないかと心配しています。
私のもう 1 つの懸念は、サーバーにドメイン名を追加することです。最後の画像で実行されている複数のphp-cgiのように、非常に高速に実行される新しいプロセスを追加しますか?
これが私の最近の出力です...