20 تا کوئری همزمان چقدر فشار روی سرور وارد میکنه؟

reza21681

Member
سلام؛
تصور کنید با استفاده از یک پی اچ پی هر چند ثانیه یکبار یه سری اطلاعات رو داخل یه پایگاه داده میریزید و توسط یه پی اچ پی دیگه یه سری اطلاعات رو از اون پایگاه داده فیلتر میکنید و میخونید. عملاً با کوئری Insert و Select میکنید.
کسی میتونه بگه بر چه اساسی حافظه سرور مشغول میشه. مثلاً چقدر رم نیاز داره یا چقدر سی پی یو اشغال میشه.
به این مسئله هم توجه کنید که مثالی که زدم فقط یک مثال بود.
چیزی که من نیاز دارم استفاده همزمان از چند فایل پی اچ پی جهت درج اطلاعات توی پایگاه داده است. و از طرفی هم بازیابی همزمان این اطلاعات توسط چند پی اچ پی دیگه ...

هرکسی هر بازخوردی بده میتونه مفید باشه.
چون هیچ دیدگاهی ندارم که یه کوئری چقدر حافظه نیاز داره و چقدر روی سرور فشار وارد میکنه تا بتونم تخمین بزنم مثلاً 20 تا کوئری همزمان چقدر فشار روی سرور وارد میکنه.

منتظر جوابتون هستم
رضا
 

ziXet

مدیر انجمن PHP/MYSQL
سلام؛
تصور کنید با استفاده از یک پی اچ پی هر چند ثانیه یکبار یه سری اطلاعات رو داخل یه پایگاه داده میریزید و توسط یه پی اچ پی دیگه یه سری اطلاعات رو از اون پایگاه داده فیلتر میکنید و میخونید. عملاً با کوئری Insert و Select میکنید.
کسی میتونه بگه بر چه اساسی حافظه سرور مشغول میشه. مثلاً چقدر رم نیاز داره یا چقدر سی پی یو اشغال میشه.
به این مسئله هم توجه کنید که مثالی که زدم فقط یک مثال بود.
چیزی که من نیاز دارم استفاده همزمان از چند فایل پی اچ پی جهت درج اطلاعات توی پایگاه داده است. و از طرفی هم بازیابی همزمان این اطلاعات توسط چند پی اچ پی دیگه ...

هرکسی هر بازخوردی بده میتونه مفید باشه.
چون هیچ دیدگاهی ندارم که یه کوئری چقدر حافظه نیاز داره و چقدر روی سرور فشار وارد میکنه تا بتونم تخمین بزنم مثلاً 20 تا کوئری همزمان چقدر فشار روی سرور وارد میکنه.

منتظر جوابتون هستم
رضا
اینکه یه کوئری برای اجرا شدن چقدر زمان و منابع سیستم رو میگیره به پارامترهای زیادی بستگی داره !
یکیش خود کوئری هست که مثلا اگر از دستورات join توش استفاده شده باشه خب مسلما زمان و منابع بیشتری میگیره و عامل مهمتر حجم دیتابیس و تعداد رکوردها هست که خیلی میتونه تعیین کننده باشه
 

reza21681

Member
اینکه یه کوئری برای اجرا شدن چقدر زمان و منابع سیستم رو میگیره به پارامترهای زیادی بستگی داره !
یکیش خود کوئری هست که مثلا اگر از دستورات join توش استفاده شده باشه خب مسلما زمان و منابع بیشتری میگیره و عامل مهمتر حجم دیتابیس و تعداد رکوردها هست که خیلی میتونه تعیین کننده باشه

ممنونم Shahkey.com از پاسخت.
خوب درباره دستورات کوئری میتونم سعی کنم تا جایی که امکانش هست بهینه بشه. اما درباره حجم پایگاه داده و تعداد رکوردها. الان نمیتونم نظر خاصی بدم. اصل و اساس کار اینه که من میخوام یه محیط چت بنویسم. با استفاده از فلش و پی اچ پی و پایگاه داده Mysql که نیاز هست هر لحظه اطلاعات رو توی پایگاه داده ذخیره کنم و از اونطرف هم هر لحظه اطلاعات رو بررسی کنم تا داده های بروز شده رو بخونم.
شاید یکم این راه غیر عاقلانه باشه اما به نظر چاره دیگه ای ندارم :(
حالا میخوام ببینم اگر من این حالت رو پیاده سازی کردم
بعد تو یه شرایطی 20 نفر آنلاین شدن با همدیگه و با در عین حال با همدیگه شروع به پردازش پایگاه داده کردن. آیا مشکل خاصی توی سرویس دهی ایجاد میشه.
آیا سرور مختل میشه
و مواردی از این قبلی...


ممنونم
خدانگهدار
رضا
 

ziXet

مدیر انجمن PHP/MYSQL
ممنونم Shahkey.com از پاسخت.
خوب درباره دستورات کوئری میتونم سعی کنم تا جایی که امکانش هست بهینه بشه. اما درباره حجم پایگاه داده و تعداد رکوردها. الان نمیتونم نظر خاصی بدم. اصل و اساس کار اینه که من میخوام یه محیط چت بنویسم. با استفاده از فلش و پی اچ پی و پایگاه داده Mysql که نیاز هست هر لحظه اطلاعات رو توی پایگاه داده ذخیره کنم و از اونطرف هم هر لحظه اطلاعات رو بررسی کنم تا داده های بروز شده رو بخونم.
شاید یکم این راه غیر عاقلانه باشه اما به نظر چاره دیگه ای ندارم :(
حالا میخوام ببینم اگر من این حالت رو پیاده سازی کردم
بعد تو یه شرایطی 20 نفر آنلاین شدن با همدیگه و با در عین حال با همدیگه شروع به پردازش پایگاه داده کردن. آیا مشکل خاصی توی سرویس دهی ایجاد میشه.
آیا سرور مختل میشه
و مواردی از این قبلی...


ممنونم
خدانگهدار
رضا
به نظرم راه دیگه ای برای این کار نداری.
باید با یه interval یا فاصله زمانی مخصوص مثلا 5 ثانیه جدول رو چک کنی.
البته یه راهی که بتونی سریع چک کنی که آیا پیغام جدید اومده یا نه اینه که اون جدول از دیتابیس که مخصوص این کار هست رو MEMORY تعریف کنی تا سرعت دسترسی بالا بره. اما اگه جدولی از نوع MEMORY باشه نمیتونه فیلد text داشته باشه!
Storage Engine مموری چون تو رم ذخیره میشه خیلی سرعت بالایی داره
باید خودت بشینی فکر کنی و بهترین الگوریتم رو طراحی کنی
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا