PDA

View Full Version : میزان پاسخ گویی سرور به درخواست های کاربر(قدرت سرور)



olampiad
دوشنبه 22 تیر 1394, 18:52 عصر
سلام و خسته نباشید به دوستان عزیز
ی سواله که خیلی وقته ذهنمو درگیر کرده.
به این سایت ی سر بزنید.
www.azarsang.com
می خوام بدونم قدرت این سرور در مقابل درخواست های کاربر چقدره.(این سرور رو مثال زدم)
این سرور از سرور های میزبانی لینوکس ایرانه که حجمشم 100 مگابایته.
الان از این سرور من ، تو هر دقیقه چند کاربر میتونن استفاده کنن؟
منظورم اینه که وقتی کاربران زیادی از سرور استفاده میکنن:
امکان داره که سرور هنگ کنه یا سایت رو بالا نیاره.
یادتونه وقتی یارانه میدادن ی سایتی بود که مردم میرفتن و توش ثبت نام میکردن:
اینا از چ سروری استفاده میکردن که تو دو سه روز 80 میلیون نفر به اینا مراجعه میکردن و اینا هنگ نمیکردن؟

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


و سوال دیگم اینه که :
مدیر هاست به من گفته تو هر ساعت فقط میتونی 50 تا ایمیل بفرستی.(یعنی فقط میتونم با استفاده از ایمیل هاست تو هر ساعت 50 تا ایمیل بفرستم)
اگه بیشتر بفرستم سرور قفل میکنه:
من برای ثبت نام هر کاربر باید بهش ی ایمیل بفرستم.
حالا
خواستم ببینم من برای این مشکل چیکار کنم.
آیا هاست هایی وجود دارن که ارسال ایمیل در آن ها نامحدود باشد.

خیلی ممنون
مرسی

arta.nasiri
دوشنبه 22 تیر 1394, 22:19 عصر
سلام

سروری که واسه سایت یارانه استفاده کردند طبیعتاْ یک سرور اختصاصی با پهنای باند خیلی بالا بود که تونسته به این تعداد از درخواست ها جوابگو باشه.
مهمترین پارامترهایی که تو قدرت سرور دخیل هستند cpu و ram سرور هستش که هر چقدر بیشتر باشه توانایی پاسخ گویی بیشتری خواهد داشت. البته در این بین نوع هارد و سیستم عامل هم مهمه.
بهینه بودن کدی که نوشتید هم خودش به اندازه منابع سرور مهم هستش. یعنی باید مدیریت منابع بخوبی پیاده سازی شده باشه تا در درخواست های بالا باعث نشه رم یا cpu بکلی اشغال بشه و سرور دان بشه.
طبیعتا شما واسه سایتی که قراره راه اندازی کنید هاست جوابگو نخواهد بود پس به فکر محدودیت ایمیل ها نباشید. بهتره یک سرور اختصاصی یا مجازی اجاره کنید در اینصورت محدودیت ارسال ایمیل نخواهید داشت.

phpdev
دوشنبه 22 تیر 1394, 23:34 عصر
پاسخگویی سرور به درخواستها به خیلی چیزها از جمله cpu و ram و حتی هارد دیسک سیستم بستگی داره بعضی دیسکها هستند که توی حدود سه ثانیه یک میلیون رکورد رو بالا پایین میکنه دیگه خودت برو تا انتهای کار دیگه در ضمن برای چنین کاری شک نکن که حتما یه سرور اختصاصی با پشتیبانی درست و حسابی میخوای . در ضمن یکی دیگه از موارد مهم نوع برنامه نویسی خود شما یا گروهتون هست.

اولا باید دستورات رو کاملا بهینه بنویسی مثلا بجای حلقه for از foreach استفاده کنی که بمراتب خیلی سریعتر از for هستش.

ثانیا بجای incloude یا require از incloude_once یا require_once استفاده کنی که بجاش require_once خیلی بهتره.

ثالثا سعی کنی string هات بهینه باشه بجای دابل کوتیشن تا جای ممکن تک کوتیشن بزنی.

رابعا برای محک زدن سایت از apachebenchmark استفاده کنی که خیلی مهمه اینم یه دستور کلی ازش :

البته توی cmd ویندوز باید این کار رو انجام بدی
ab -n 100 -c 10 -t 10 http://www.example.com/

البته اون / باید بعد از .com باشه ادیتور اینجوری نشون میده بزن و حالشو ببر

البته تا یادم نرفته optimize فایلهای css و js و image هات خیلی مهمه فایلهات قبل از آپلود comperes کن.

فقط و فقط از pdo و stored procedure استفاده کن خیلی سرعتر میشه و امن تر علی الخصوص stored procedure غافل نشی ازش

اینم یه کتاب مشتی و با حال البته فارسیشم هست .

pro_php_application_performance.pdf