رفتن به مطلب

پست های پیشنهاد شده

سلام

من برای سایتم یک کرون جاب ساختم که هر دقیقه یک بار اجرا میشه.

روی هاست اولی که هاست معمولی بود مشکلی نداشت اما حالا که آوردمش روی هاست ابری این مشکل رو دارم :

فایل اجرا شده در RAM باقی میماند و پشت سر هم فایل ها به RAM سایت اضافه مشوند و خارج نمیشوند.

تا جایی این کار ادامه پیدا میکنه که RAM سایت پر شده و سایت باز نمیشود.

برای خالی کردن RAM به ناچار تیم پشتیبانی هاست به صورت دستی انجام میدهند.

برای فایل expire time یا timeout با استفاده آدرس زیر گذاشتم :

http://php.net/manual/en/function.set-time-limit.php

اما بازم کار نمیکنه و دستورات داخل فایل اجرا نمیشوند.

کسی هست که بتونه راهنمایی کنه ؟

سایت من وردپرس نیست و چون انجمن معتبری در این زمینه پیدا نکردم ، اینجا مطرح کردم.

لینک به ارسال

چه کاری در فایل انجام میشه؟

به صورت دستی مشکلی ندارد؟

اینو تست کنید


ini_set('max_execution_time', 20);

لینک به ارسال

در فایل فید سایت مورد نظر رو میخونه و مطالب جدید را به دیتابیس اضافه میکنه.

به طور دستی که باز میکنم یا انجام میشه یا پیغام خطا میدهد اما با cron job این پیغام خطا نمیدهد و منتظر میماند ...

تو فایل php.ini ، max_execution_time تنظیم شده.

از این توابع هم استفاده کردم :

die - mysql_close - set_time_limit - exit - getmypid - exec - shell_exec

هیچ کدوم در بسته شدن فایل تاثییر نداشتند ...

الان من به چیزی نیاز دارم که مثلا بعد از گذاشت یک دقیقه ، چه کار انجام شده باشه ، چه نشده باشه ، فایل بسته بشه و از ram خارج بشه ...

لینک به ارسال

فکر نمی کنید از تنظیمات خود سرور باشه

چون باید یکی از راه ها بهرحال درست کار کنه

چون تنظیمات نادرست باعث مشکلات در سمت کاربر و سرور میشن

لینک به ارسال

فکر نمیکنم مشکل شما از سمت php باشه . شما بصورت دستی سعی کنید تو کدهای php از تابع های set_time_limit و ... استفاده کنید . از تابع exit() هم استفاده کنید ببینید اتفاقی تو روند کار می افتد ؟

لینک به ارسال

از همه اینها استفاده کردم.

فکر نمی کنید از تنظیمات خود سرور باشه

چون باید یکی از راه ها بهرحال درست کار کنه

چون تنظیمات نادرست باعث مشکلات در سمت کاربر و سرور میشن

شاید !!!

درخواست میدم بررسی کنند ...

این کد فایل هست که من استفاده میکنم :

<?php

//@error_reporting(0);

define( '_VALID', 1 );

require_once('update.php');

@set_time_limit(0);

@ini_set('max_execution_time', 20);

@header("Cache-Control: no-cache, must-revalidate");

@header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");

@header( 'Pragma: no-cache' );

?>

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>update</title>

</head>

<body>

<?php

function cron_job()

{

@set_time_limit(30);

$b=mysql_query("select feedid from upd where id='1'");

$t=mysql_query("select id from feed");

$fetch=mysql_fetch_array($B);

echo "Check : ".$feedid = $fetch['feedid'];

echo "<br/>";

echo "Max : ".$max = mysql_num_rows($t);

echo "<br/>";

if($feedid > $max)

{

mysql_query("update upd set feedid='1' where id='1'");

echo "<p>Returned to 1</p>";

@exit;

}

else

{

$q=mysql_query("select * from feed where id='$feedid'");

if(mysql_num_rows($q) == 0)

{

echo '<p>Empty</p>';

echo "<br/>";

echo "Next : ".$up1 = $feedid+1;

mysql_query("update upd set feedid='$up1' where id='1'");

@exit;

}

else

{

while($row=mysql_fetch_array($q))

{

echo "Current : ".$id=$row['id'];

echo "<br/>";

echo "Feed : ".$feed=$row['feed'];

echo "<br/>";

echo "Site ID : ".$siteid=$row['siteid'];

echo "<br/>";

echo "Category ID : ".$catid=$row['catid'];

echo "<br/>";

$w = mysql_query("select status from sites where id='$siteid'");

$w1 = mysql_fetch_array($w);

echo "Site status : ".$w1['status']."<br/>";

if($w1['status'] == 'active')

{

echo "Next : ".$up = $id+1;

echo "<br/>";

mysql_query("update upd set feedid='$up' where id='1'");

if(!get_feed($feed,$siteid,$catid))

{

echo "<p>Successful</p>";

@exit;

}

else

{

echo "<p>Unsuccessful</p>";

@exit;

}

@exit;

}

else

{

echo "<p>Site not actived</p>";

echo "<br/>";

echo "Next : ".$up2 = $feedid+1;

mysql_query("update upd set feedid='$up2' where id='1'");

@exit;

}

}

@exit;

}

@exit;

}

@exit;

}

cron_job();

@exit;

@die();

@ob_clean();

@flush();

?>

</body>

</html>

<?php

@mysql_close($cn);

@header("Connection: close");

?>

این کد رو دیشب تغییر دادم و در حال تست میباشد ...

و این هم نمودار استفاده سایت از منابع وقتی این اتفاق رخ میدهد :

Untitled-2.png

پردازشگر: 4 هسته

Ram: 2000 مگابایت

تعداد بازدید در لحظه: 75

استفاده Mysql از CPU: 4 هسته

ویرایش شده توسط Morteza
لینک به ارسال

چرا ورودی 0 ؟


set_time_limit(0);

پاکش کنید یا یک عددی مانند همان 20 بهش بدید . با 0 اونو برای همیشه دارید اجرا میکنید. چرا انقدر پشت تابع ها @ گذاشتید ؟ چرا تو تابع cron_job باز هم set_time_limit رو مقدار دهی کردید ؟ اگر میخواهید که بصورتی باشد که این تابع مثلا با تاخیر 5 ثانیه ایی اجرا شود , میتوانید از Sleep استفاده کنید . باید طوری Sleep و set_time_limit را مقدار دهی کنید که با هم ست شوند

لینک به ارسال

چرا ورودی 0 ؟


set_time_limit(0);

پاکش کنید یا یک عددی مانند همان 20 بهش بدید . با 0 اونو برای همیشه دارید اجرا میکنید.

این کار هم انجام میدم ، اما فکر نکم درست بشه.

چون داخل تابع :


set_time_limit(30);

تنظیم شده است و باید کار تموم بشه ...

لینک به ارسال

شما ارور ریپورت رو all کنید لینک این صفحه رو در سرور به صورت مستقیم در مرورگر بنویسید و وارد این صفحه بشید ببینید پیغام خطا یا اخطار خاصی میدهد یا نه

این صفحه به صورت کرون اجرا میشود پس نیازی به کدهای html نیست چون در پشت صحنه اجرا میشود کدهای html رو پا کنید فقط php باشه 2 باره تست کنید

لینک به ارسال

شما ارور ریپورت رو all کنید لینک این صفحه رو در سرور به صورت مستقیم در مرورگر بنویسید و وارد این صفحه بشید ببینید پیغام خطا یا اخطار خاصی میدهد یا نه

این صفحه به صورت کرون اجرا میشود پس نیازی به کدهای html نیست چون در پشت صحنه اجرا میشود کدهای html رو پا کنید فقط php باشه 2 باره تست کنید

ارور ریپورت رو all قرار دادم ، خطایی ندارد ...

در هاست قبلی تا از کدهای html استفاده نکردم ، درست نشد ...

لینک به ارسال

بر اساس کمک دوستان و جستجوی خودم کد نهایی به شکل زیر شد :


<?php
error_reporting('all');
define( '_VALID', 1 );
require_once('update.php');
@ignore_user_abort(false);
@set_time_limit(25);
@ini_set('max_execution_time', 25);
@header("Cache-Control: no-cache, must-revalidate");
@header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
@header( 'Pragma: no-cache' );
function cron_job()
{
@set_time_limit(25);
$b=mysql_query("select feedid from upd where id='1'");
$t=mysql_query("select id from feed");
$fetch=mysql_fetch_array($;
$feedid = $fetch['feedid'];
$max = mysql_num_rows($t);
if($feedid > $max)
{
mysql_query("update upd set feedid='1' where id='1'");
@exit;
}
else
{
$q=mysql_query("select * from feed where id='$feedid'");
if(mysql_num_rows($q) == 0)
{
$up1 = $feedid+1;
mysql_query("update upd set feedid='$up1' where id='1'");
@exit;
}
else
{
while($row=mysql_fetch_array($q))
{
$id=$row['id'];
$feed=$row['feed'];
$siteid=$row['siteid'];
$catid=$row['catid'];
$w = mysql_query("select status from sites where id='$siteid'");
$w1 = mysql_fetch_array($w);
if($w1['status'] == 'active')
{
$up = $id+1;
mysql_query("update upd set feedid='$up' where id='1'");
if(!get_feed($feed,$siteid,$catid))
{
@exit;
}
else
{
@exit;
}
@exit;
}
else
{
$up2 = $feedid+1;
mysql_query("update upd set feedid='$up2' where id='1'");
@exit;
}
}
@exit;
}
@exit;
}
@exit;
}
cron_job();
unset($b,$t,$fetch,$feedid,$max,$q,$up1,$row,$id,$feed,$siteid,$catid,$w,$w1,$up,$up2);
__halt_compiler();
@exit;
@die();
@mysql_close($cn);
@header("Connection: close");
?>

هنوز مشکل حل نشده است ...

ویرایش شده توسط Ghasem Paran
لینک به ارسال

سلام

یک چیز عجیب الان متوجه شدم !!!

اسکریپت در طول روز هر دقیقه اجرا میشه و من مرتب مصرف منابع رو زیر نظر دارم.

و اون چیز عجیب اینه که همیشه بین ساعت 1 تا 5 بعد از ظهر این اتفاق میفته و در بقیه ساعات به خوبی و بدون مشکل کار میکنه ...

دارم دیونه میشم از دست سایت خبرگیر ....

:huh::o

ویرایش شده توسط Ghasem Paran
لینک به ارسال

با پشتیبانی حتما تماس بگیرید و این موضوع رو گوش زد کنید.همانطور که مرتضی گفتند میتونه مشکل از سرور باشه . چون تمامیه پارامترها سمت PHP رو شما ست کردید

لینک به ارسال

با پشتیبانی حتما تماس بگیرید و این موضوع رو گوش زد کنید.همانطور که مرتضی گفتند میتونه مشکل از سرور باشه . چون تمامیه پارامترها سمت PHP رو شما ست کردید

منم بارها همینو بهشون میگم ...

اگر مشکل از اسکریپت بود پس چرا تو ساعت های دیگه اتفاق نمیفته ....

اما پشتیبانی هاست همچنان اسرار داره که مشکل از فایل هست و میگه :

لطفا توجه داشته باشید با توجه به حجم کاری پشتیبانی ارائه خدمات آموزشی و همچنین عیب یابی اسکریپت ها برای تیم پشتیبانی مقدور نیست. خواهشمند است این مورد را با یک برنامه نویس متبحر مطرح و از این طریق اقدام به حل مشکل نمایید.

این لست پروسه های در حال اجرای چند روز پیش که باعث مشکل شده بودند :

php /home/olomraya/domains/khabargir.ir/public_html/ucron.php

php /home/olomraya/domains/khabargir.ir/public_html/ucron.php

php /home/olomraya/domains/khabargir.ir/public_html/ucron.php

php /home/olomraya/domains/khabargir.ir/public_html/ucron.php

php /home/olomraya/domains/khabargir.ir/public_html/ucron.php

/usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/index.php

php /home/olomraya/domains/khabargir.ir/public_html/ucron.php

/usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/index.php

/usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/index.php

/usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php

/usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/index.php

/usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php

ببینید فایل ucron.php چند بار اجرا شده.

طبق راهنمایی های پشتیبان سایت ، باید از توابعی استفاده کنم که اگر فایل اجرا بود ، ابتدا بسته بشه و بعد فایل جدید باز بشه یا بعد از مدتی فایل ها به طور خودکار بسته شوند ...

یک نفر در انجمن http://barnamenevis.org این کد رو بهم پیشنهاد کرد :


$dom = new simple_html_dom();
// .....

$dom->clean();

$dom = $var1 = $var2 = $var3 = /* Null Set */ null;
unset($dom, $var1, $var2, $var3);

بنظرتون تاثیر داره ؟

ویرایش شده توسط Ghasem Paran
لینک به ارسال

کدی که داده شده نمیدونم چه ربطی به خارج کردن داره!!

اما من هنوزم میگم از سرور شماست...

لینک به ارسال

کدی که داده شده نمیدونم چه ربطی به خارج کردن داره!!

اما من هنوزم میگم از سرور شماست...

منم نفهمیدم چه ربطی داشت این کد ...

منم فکر میکردم مشکل از سرور هست ، اما مدیر سایت وبگو بهم پیشنهاد کرد برای تست یک فایل دیگه هم که کار خاصی انجام نمیده اضافه کنم.

بعد از این که این مشکل تکرار شد ، لیست فایل هایی که در حال اجرا بودن و ram رو اشغال کرده بودند ، رو گرفتم ، فایلی که برای تست گذاشته بودم اصلا اجرا نبود ... (test.php)


olomraya 2867 0.0 0.0 208776 12780 ? Ss 12:15 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 6624 0.0 0.0 208812 12552 ? Ss 12:16 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 10039 0.0 0.0 209068 12620 ? Ss 12:17 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 14068 0.0 0.0 208812 12564 ? Ss 12:18 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 17632 0.0 0.0 210112 13832 ? Ss 12:19 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 21175 0.0 0.0 209068 12604 ? Ss 12:20 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 24517 0.0 0.0 209068 12584 ? Ss 12:21 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 27899 0.0 0.0 209068 13040 ? Ss 12:22 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 31137 0.0 0.0 208776 12404 ? Ss 12:23 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 35079 0.0 0.0 208812 12548 ? Ss 12:24 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 39428 0.0 0.0 208812 12556 ? Ss 12:25 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 44603 0.0 0.0 208776 12772 ? Ss 12:26 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 48522 0.0 0.0 208592 12224 ? Ss 12:27 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 52182 0.0 0.0 208592 12524 ? Ss 12:28 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 55260 0.0 0.0 208592 12512 ? Ss 12:29 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 58578 0.0 0.0 208592 12504 ? Ss 12:30 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 62487 0.0 0.0 208592 12516 ? Ss 12:31 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 66269 0.0 0.0 209068 12592 ? Ss 12:32 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 69793 0.0 0.0 208776 12744 ? Ss 12:33 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 73113 0.0 0.0 208776 12740 ? Ss 12:34 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 79264 0.0 0.0 208776 12740 ? Ss 12:36 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 85585 0.0 0.0 208776 12744 ? Ss 12:38 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 92538 0.0 0.0 208776 12744 ? Ss 12:40 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 102008 0.0 0.0 208776 12748 ? Ss 12:43 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 109566 0.0 0.0 207804 12732 ? Ss 12:45 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 113291 0.0 0.0 208776 12744 ? Ss 12:46 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 116663 0.0 0.0 192260 12032 ? Ss 12:47 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 120202 0.0 0.0 208776 12740 ? Ss 12:48 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 130474 0.0 0.0 130860 12640 ? Ss 12:51 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 133559 0.0 0.0 130860 12640 ? Ss 12:52 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 143519 0.0 0.0 208776 12736 ? Ss 12:55 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 147185 0.0 0.0 208776 12640 ? Ss 12:56 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 150459 0.0 0.0 208592 12520 ? Ss 12:57 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 153520 0.0 0.0 208592 12204 ? Ss 12:58 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 159978 0.0 0.0 208592 12204 ? Ss 13:00 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 163222 0.0 0.0 131152 12828 ? Ss 13:01 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 170416 0.0 0.0 208776 12788 ? Ss 13:03 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 173833 0.0 0.0 208776 12648 ? Ss 13:04 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 176946 0.0 0.0 209068 12568 ? Ss 13:05 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 180119 0.0 0.0 208812 12528 ? Ss 13:06 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 182996 0.0 0.0 130896 12424 ? Ss 13:07 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 185973 0.0 0.0 208812 12540 ? Ss 13:08 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 189152 0.0 0.0 208812 12532 ? Ss 13:09 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 198936 0.0 0.0 208812 12524 ? Ss 13:12 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 201695 0.0 0.0 208812 12540 ? Ss 13:13 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 207683 0.0 0.0 208832 12520 ? Ss 13:15 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 216754 0.0 0.0 208592 12488 ? Ss 13:18 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 217859 0.0 0.0 205752 11236 ? S 13:18 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 222874 0.0 0.0 208456 12480 ? Ss 13:20 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 229673 0.0 0.0 208776 12492 ? Ss 13:22 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 230538 0.0 0.0 205752 11656 ? S 13:22 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 235544 0.0 0.0 130896 12392 ? Ss 13:24 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 238084 0.0 0.0 0 0 ? Z 13:24 0:00 [php-cgi] <defunct>
olomraya 239518 0.0 0.0 205752 11232 ? S 13:25 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 242732 0.0 0.0 208812 12520 ? Ss 13:26 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 246158 0.0 0.0 205752 11664 ? S 13:27 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 246209 0.0 0.0 205752 11232 ? S 13:27 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 248853 0.0 0.0 208812 12508 ? Ss 13:28 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 248987 0.0 0.0 205752 11232 ? S 13:28 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 254030 0.0 0.0 208812 12532 ? Ss 13:30 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 264976 0.0 0.0 205752 11236 ? S 13:33 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 267339 0.0 0.0 205752 11236 ? S 13:34 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 267381 0.0 0.0 205752 11236 ? S 13:34 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 271729 0.0 0.0 205752 11692 ? S 13:35 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 272071 0.0 0.0 205752 11232 ? S 13:35 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 272511 0.0 0.0 205752 11236 ? S 13:36 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 273992 0.0 0.0 205752 11692 ? S 13:36 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 274022 0.0 0.0 205752 11236 ? S 13:36 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 274948 0.1 0.0 205752 11696 ? S 13:36 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 276021 0.3 0.0 205752 11680 ? S 13:37 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/l.php
olomraya 276106 0.2 0.0 206400 12496 ? S 13:37 0:00 /usr/local/php5/bin/php-cgi /home/olomraya/domains/khabargir.ir/public_html/cat.php
root 276753 0.0 0.0 103316 860 pts/15 S+ 13:37 0:00 grep olomraya
olomraya 881529 0.0 0.0 208776 7684 ? Ss 11:29 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 885077 0.0 0.0 208776 9872 ? Ss 11:30 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 888622 0.0 0.0 208776 12700 ? Ss 11:31 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 891956 0.0 0.0 208776 7788 ? Ss 11:32 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 895588 0.0 0.0 208776 12600 ? Ss 11:33 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 898656 0.0 0.0 208776 7452 ? Ss 11:34 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 904231 0.0 0.0 208776 7180 ? Ss 11:36 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 911596 0.0 0.0 209068 12532 ? Ss 11:37 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 914795 0.0 0.0 209068 12100 ? Ss 11:38 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 918450 0.0 0.0 208812 12580 ? Ss 11:39 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 922466 0.0 0.0 208812 12588 ? Ss 11:40 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 926918 0.0 0.0 208812 12580 ? Ss 11:41 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 930604 0.0 0.0 208812 12584 ? Ss 11:42 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 934532 0.0 0.0 208812 12576 ? Ss 11:43 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 938917 0.0 0.0 208812 12532 ? Ss 11:44 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 942545 0.0 0.0 208812 12540 ? Ss 11:45 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 946316 0.0 0.0 208592 12528 ? Ss 11:46 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 949988 0.0 0.0 208812 12544 ? Ss 11:47 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 953636 0.0 0.0 208812 12536 ? Ss 11:48 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 957134 0.0 0.0 208812 12552 ? Ss 11:49 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 960470 0.0 0.0 208812 12544 ? Ss 11:50 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 964392 0.0 0.0 208812 12544 ? Ss 11:51 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 968527 0.0 0.0 208812 12552 ? Ss 11:52 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 973204 0.0 0.0 208592 12524 ? Ss 11:53 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 977731 0.0 0.0 209068 12604 ? Ss 11:54 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 981724 0.0 0.0 209068 12608 ? Ss 11:55 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 985797 0.0 0.0 209068 12604 ? Ss 11:56 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 989980 0.0 0.0 209068 12620 ? Ss 11:57 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 993934 0.0 0.0 209068 12612 ? Ss 11:58 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 998000 0.0 0.0 209068 12612 ? Ss 11:59 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1001682 0.0 0.0 210096 14000 ? Ss 12:00 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1004654 0.0 0.0 210096 13976 ? Ss 12:01 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1008053 0.0 0.0 210652 14268 ? Ss 12:02 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1010797 0.0 0.0 208776 12772 ? Ss 12:03 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1013833 0.0 0.0 208776 12776 ? Ss 12:04 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1017323 0.0 0.0 208776 12768 ? Ss 12:05 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1020575 0.0 0.0 208776 12780 ? Ss 12:06 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1023800 0.0 0.0 208776 12772 ? Ss 12:07 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1027141 0.0 0.0 208776 12780 ? Ss 12:08 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1030005 0.0 0.0 209952 13536 ? Ss 12:09 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1033036 0.0 0.0 209068 12960 ? Ss 12:10 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1036188 0.0 0.0 209068 12580 ? Ss 12:11 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1039957 0.0 0.0 209068 12568 ? Ss 12:12 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1043763 0.0 0.0 209068 12904 ? Ss 12:13 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php
olomraya 1047377 0.0 0.0 209068 12952 ? Ss 12:14 0:00 php /home/olomraya/domains/khabargir.ir/public_html/core/cron.php

کار اصلی در تابع get_feed() انجام میشه...

ویرایش شده توسط Ghasem Paran
لینک به ارسال

خوب نتیجه چی میشه؟ :)

این تابع اخبار سایت رو میگیره ، در دیتابس ذخیره میکنه ...

لینک به ارسال

کد رو به این شکل تغییر دادم :


<?php
error_reporting('all');
define( '_VALID', 1 );
require_once('update.php');
@ignore_user_abort(true);
@set_time_limit(20);
@ini_set('max_execution_time', 20);
@header("Cache-Control: no-cache, must-revalidate");
@header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
@header( 'Pragma: no-cache' );
function cron_job()
{
$b=mysql_query("select feedid from upd where id='1'");
$t=mysql_query("select id from feed");
$fetch=mysql_fetch_array($;
$feedid = $fetch['feedid'];
$max = mysql_num_rows($t);
if($feedid > $max)
{
mysql_query("update upd set feedid='1' where id='1'");
}
else
{
$q=mysql_query("select * from feed where id='$feedid'");
if(mysql_num_rows($q) == 0)
{
$up1 = $feedid+1;
mysql_query("update upd set feedid='$up1' where id='1'");
}
else
{
while($row=mysql_fetch_array($q))
{
$id=$row['id'];
$feed=$row['feed'];
$siteid=$row['siteid'];
$catid=$row['catid'];
$w = mysql_query("select status from sites where id='$siteid'");
$w1 = mysql_fetch_array($w);
if($w1['status'] == 'active')
{
$up = $id+1;
mysql_query("update upd set feedid='$up' where id='1'");
@get_feed($feed,$siteid,$catid);
}
else
{
$up2 = $feedid+1;
mysql_query("update upd set feedid='$up2' where id='1'");
}
}
}
}
}
$r=mysql_query("select status from upd where id='1'");
$row=mysql_fetch_array($r);
if($row['status'] == "Stopped")
{
mysql_query("update upd set status='Running' where id='1'");
cron_job();
mysql_query("update upd set status='Stopped' where id='1'");
}
else
{
@die();
@exit;
}
unset($b,$t,$fetch,$feedid,$max,$q,$up1,$row,$id,$feed,$siteid,$catid,$w,$w1,$up,$up2,$r,$row);
@mysql_close($cn);
@header("Connection: close");
@die();
@exit;
__halt_compiler();
?>

تا حدودی بهتر شد اما حل نشد ....

لینک به ارسال

بخشهایی از کد رو بردارید

از لاگ برای زمان هر بخش استفاده کنید

و ببینید کجا مشکل دارد

http://www.w3schools.com/php/func_error_log.asp

لینک به ارسال

سلام

مشکل رو پیدا کردم

از این هست :


<?php
if(search($uurl)==1)
{
mysql_query("insert into post() values ('','$siteid','$catid','$ttitle','$uurl','no','$time','$feeddate','$sitemapdate','0')");
}
?>

اینم تابع :


<?php
function search($uurl)
{
$r3=mysql_query("select url from post where url LIKE '%$uurl%' limit 3");
if(mysql_num_rows($r3) > 1)
return(2);
else
return(1);
}
?>

این تابع تکراری نبودن محتوا رو چک میکند...

98% زمان برای این تابع استفاده میشه.دیتابیس نزدیک به 800000 رکورد دارد و روزی 10000 تا بهش اضافه میشه.

کسی میدونه باید چیکار کنم تا سریع تر پیدا بشه ؟

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...