PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : اجرای اسکریپت php هر ثانیه یک بار



Mr_mehran
February 16th, 2018, 23:01
سلام ، وقت بخیر . دوستان من دو سوال دارم

اول اینکه : چطور می تونیم مثلا فایل test.php رو طوری تنظیم کنیم که هر ثانیه یکبار اجرا بشه . متاسفانه با کران جاب کمترین زمان ممکن حداقل یک دقیقه است . اینم بگم من چون دسترسی به سرور دارم centos 7 - اگه راهی باشه که حتی با دستورات لینوکس فایل مورد نظر رو هر ثانیه یکبار اجرا کنم بازم مشکلی نیست (هر روشی که جواب بده کارمو راه می اندازه )

سوال دوم : بهترین راه برای اینکه تشخیص بدم فرضا فایل test.php موقع اجرا چه مقدار از RAM و CPU سیستم رو مشغول می کنه چه روشی هست ؟

yourhosting
February 16th, 2018, 23:29
سلام ، وقت بخیر . دوستان من دو سوال دارم

اول اینکه : چطور می تونیم مثلا فایل test.php رو طوری تنظیم کنیم که هر ثانیه یکبار اجرا بشه . متاسفانه با کران جاب کمترین زمان ممکن حداقل یک دقیقه است . اینم بگم من چون دسترسی به سرور دارم centos 7 - اگه راهی باشه که حتی با دستورات لینوکس فایل مورد نظر رو هر ثانیه یکبار اجرا کنم بازم مشکلی نیست (هر روشی که جواب بده کارمو راه می اندازه )

سوال دوم : بهترین راه برای اینکه تشخیص بدم فرضا فایل test.php موقع اجرا چه مقدار از RAM و CPU سیستم رو مشغول می کنه چه روشی هست ؟



while true ; do php test.php & sleep 1; done

Mr_mehran
February 16th, 2018, 23:52
while true ; do php test.php & sleep 1; done


ممنون از شما
به جای test.php لینک خارجی هم میشه نوشت ؟ مثلا www.exmplesite.com/test.php

yourhosting
February 17th, 2018, 00:02
ممنون از شما
به جای test.php لینک خارجی هم میشه نوشت ؟ مثلا www.exmplesite.com/test.php (http://www.exmplesite.com/test.php)

while true ; do curl -s http://site.tld/test.php & sleep 1; done

alimosavi
February 17th, 2018, 00:03
Cron job تعریف کن

Mr_mehran
February 17th, 2018, 10:24
while true ; do curl -s http://site.tld/test.php & sleep 1; done

عالی بود ، اما مشکلی هست اینکه با بستن نرم افزار puty اجرای این دستور هم متوقف میشه
میخوام ایجوری باشه که دستور رو بزنم و به صورت بازه ای در هر ثانیه فایل رو اجرا کنه - حتی در صورتی که برنامه puty رو بسته باشم
و اینکه هر زمان خودم خواستم بتونم دستوری رو که شما گفتی stop کنم .
stop کردن while do تو لینوکس چه جوریه ؟


Cron job تعریف کن

یعنی راهی هست کران جاب رو به روی یک ثانیه تعریف کرد ؟

cacodemon
February 17th, 2018, 13:00
عالی بود ، اما مشکلی هست اینکه با بستن نرم افزار puty اجرای این دستور هم متوقف میشه
میخوام ایجوری باشه که دستور رو بزنم و به صورت بازه ای در هر ثانیه فایل رو اجرا کنه - حتی در صورتی که برنامه puty رو بسته باشم
و اینکه هر زمان خودم خواستم بتونم دستوری رو که شما گفتی stop کنم .
stop کردن while do تو لینوکس چه جوریه ؟



یا screen نصب کن
یا اخر دستورت & بزن

alimosavi
February 17th, 2018, 13:57
در فایل crontab این خط رو اضافه کن


* * * * * REMAIN=60 INC=1 ; while ; do /bin/cmd -arg1 ; sleep $INC; REMAIN=$(($REMAIN - $INC)); done

بجای do /bin/cmd -arg1 دستورتو بگزار مثلا do php /home/script.php

مقدار INC=1 تعداد ثانیه ای است که منظر اجرای دستور می شه اگر INC=5 باشه دستورت هر 5 ثانیه اجرا می شه

cacodemon
February 17th, 2018, 15:51
در فایل crontab این خط رو اضافه کن


* * * * * REMAIN=60 INC=1 ; while ; do /bin/cmd -arg1 ; sleep $INC; REMAIN=$(($REMAIN - $INC)); done

بجای do /bin/cmd -arg1 دستورتو بگزار مثلا do php /home/script.php

مقدار INC=1 تعداد ثانیه ای است که منظر اجرای دستور می شه اگر INC=5 باشه دستورت هر 5 ثانیه اجرا می شه

عالی بود
ولی یه سوال
* * * * * REMAIN=60 INC=1 ; while ; do /bin/cmd -arg1 ; sleep $INC; REMAIN=$(($REMAIN - $INC)); done

$ که قرمزه اضافه نیست؟