• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
کدهایی که روی سرور فشار می آورند
#1
سلام
من یک سایت دارم که روزی 360 هزار بار نمایش داده می شود با اینکه سرور اختصاصی دارم خیلی رو سرور فشاره و تا جایی که تونستم کدها را بهینه کردم آیا توابع زیرخیلی روی سرور فشار وارد می کنند یعنی نقش خیلی موثری در فشار روی cpu دارند
تابع اول : substr_count
تابع دوم : explode
و اگر این دو تابع خیلی از cpu استفاده می کنند آیا جایگزینی هم دارند
  پاسخ
تشکر شده توسط :
#2
البته تا جایی که من اطلاع دارم توابع مربوط به کار با رشته فشار زیادی وارد نمیکنند.
بیشترین توابعی که باید بهینه سازی بشن توابع ارتباط به دیتابیس هستن. که باید با بهینه نوشتن کوئری های دیتابیس فشار روی سرور کم کنید.
  پاسخ
تشکر شده توسط :
#3
سلام
ولی من شنیدم توابع کار با رشته ها خیلی روی سرور فشار وارد می کند اگر ممکنه به من بگویید آیا این حرف درسته یا نه
  پاسخ
تشکر شده توسط :
#4
تا جایی که من شنیدم Wink
اینجور مواقع از کش استفاده می کنند Big Grin
  پاسخ
تشکر شده توسط : Goback zoghal hidensoft
#5
سلام
ببخشید میشه یک نمونه کد بدهید من خوب منظورتون را متوجه نشدم مثلا یک مثال بزنید چون خیلی سرورم تحت فشاره
  پاسخ
تشکر شده توسط :
#6
منظور oia (محمد امین) این بوده که بعضی از اطلاعات رو بجای اینکه هی در پایگاه داده ذخیره کنید و بعد دریافت کنید (البته باید خیلی تکرار بشه وگرنه همون پایگاه داده بهتره) ، بجای اینکه در پایگاه داده ذخیره کنید ، در چندین فایل ذخیره می کنید و از اونا می خونید. نمونه توی phpclasses.org زیاده. یا اصلاً جستجو کن php/mysql catching
غایب
  پاسخ
تشکر شده توسط : Goback
#7
سلام
چون من یک سرویسی دارم که دائما اطلاعات بروز می شود و نباید از catch خوانده شود را دارم لطفا به من بگویید اون دو تابع زیاد از cpu استفاده می کند و آیا تابع mysql_real_escape_string که برای امنیت در mysql استفاده می شود از cpu زیاد استفاده می کنم این سوالات برایم خیلی ارزش دارد ممنون می شوم اگر کمکم کنید
  پاسخ
تشکر شده توسط :
#8
اولاً اینکه اگر mysql_real_scape_string و توابع دیگری در همین موضوع باعث مصرف شدن cpu در حد غیر معمولی هم بشن ، باز تو نمیتونی ازشون استفاده نکنی ! اینا مربوط به امنیت پایگاه داده هست و باید حتماً حتماً حتماً استفاده بشه. اما اینکه واقعاً مصرف بالایی دارن هر سه تابع که گفتی یا نه ، نمیدونم. باید منتظر باشی اساتید انجمن بیان و نظرشونو اعلام کنن.
غایب
  پاسخ
تشکر شده توسط :
#9
سلام
لطفا اگر کسی از میزان استفاده این 3 تابع یا حتی یکیشون اطلاعی دارد کمکم کند
  پاسخ
تشکر شده توسط :
#10
منم اطلاع دقیق ندارم ولی دیدم فعلا کسی از اساتید وقت نکرده بیاد جواب بده گفتم شاید این به دردت بخوره :
اینجوری میتونی ببینی توایع چه زمانی از CPU کار میکشن :
کد پی‌اچ‌پی:
$str='string1,string2,string3,string4,string5,string6';
$now=microtime(true);
explode(',',$str);
$procTime=microtime(true)-$now;
echo(
number_format($procTime,20)); 
توابع رو یکی یکی بذار و چک کن . زمان یک بار اجراش رو داشته باشی میتونی بار کلی رو حساب کنی !!!!!
امیدوارم به کارت بیاد ... Blush
ولی معمولا این توابع تو یه سطح کار میکشن و کلا فکر نکنم زیاد سنگین باشن ! تست کنی میبینی !
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان