PDA

View Full Version : محاسبه زمان Down شدن سایت



bade saba
یک شنبه 03 اردیبهشت 1391, 22:26 عصر
سلام
میخاستم بدونم چجوری و با داشتن چه اطلاعاتی میشه محاسبه کرد که سایت ما توان پاسخگویی به چند کاربر رو در یک زمان داره و به چه حدی از بازدید برسه دچار مشکل میشه ؟

ممنون

d_derakhshani
یک شنبه 03 اردیبهشت 1391, 22:54 عصر
اين مورد بستگي به عوامل زيادي داره. همش مربوط به برنامه شما نيست. البته قسمت بيشترش مربوط به شما نيست(شما مي تونيد صرفا سايت تون رو بهينه كنيد)
بخش عظم توان پاسخ گويي به ميزان و قدرت سرور تعدا برنامه هاي در حال اجرا در IIS، تعداد كاربران فعال و ... داره. نحوه پيكربندي خود IIS هم بسيار تاثير گذاره. در اينجو مواقع با استفاده از ابزار هاي تست ميزان پاسخ گويي برنامه شما در سرور مشخص(دقت كنيد نه صرفا برنامه شما) بررسي ميشه.
اين به اين معني نيست كه شما لازم نيست كار خاصي براي كارايي سايت تون بكنيد كاملا برعكس. بلكه منظور اينه كه شما اگه بهينه ترين سايت رو هم داشته باشيد باز نميشه محاسبه كرد كه توان پاسخگويي اون چقدره. بلكه به عوامل خارج از دست توليد كننده بستگي داده.
شما بايد تست هاي زيادي از برنامه تون بگيريد يكي از ساده ترين اونها اينه كه هر صفحه رو به تنهايي با ابزاري مثل ابزارهايي مثل ابزار توسعه مروگر كروم(و ...) بررسي كنيد كه صفحه مورد نظر چقدر زمان براي بود احتياج داره و بيشترين فشار رو كدوم قسمته(شروع لود-زمان صرف شده در سرور،لود اسكريپت، تصاوير و ...) و بعد اگه مشكلي بود اون رو اصلاح كرد
تست مهم تره اينه كه شما از برنامه تون Load Test و Stress Test بگيريد تا توانايي برنامه تون رو بررسي كنيد. براي اينكار مي تونيد از خود VS 2010 استفاده كنيد

bade saba
دوشنبه 04 اردیبهشت 1391, 20:05 عصر
ممنون از پاسختون اما اینجور که میفرمایید کار خیلی رو هواست، مثلا برای سیستمی که من دارم چه باید کرد؟ من حدود 6 ماه دیگه سیستمی رو به مشتریام ارائه میدم که میدونم تقریبا 250 تاشون به این نیاز دارن و در کنار این باید یه وب سایتی وجود داشته باشه که خدماتی رو هم وب سایت بده پس من 250 نفر دارم که میدونم در سیستم من لاگین خواهند کرد، اگه این حدود 250 تا لاگین رو من در روز داشته باشم و این مساله هم برام روشن باشه که اینا از حدود 9 صبح تا تقریبا 5 یا 6 بعد از ظهر یه بند در داخل سیستم حضور دارن و با فواصل غیر منظم عملیاتی هم انجام میدن و مواردی رو هم چک میکنن و خوب احتمال اینکه یکی هم همینجوری بیاد سایت رو ببینه (بدون اینکه لاگین کنه ) هست، من چجوری باید بدونم که باید برم چه host ای بگیرم که این بار رو جواب بده و مطمئن باشم جواب کارم رو میده چون down شدن سایت جدای از اینکه در کار مشتریان اختلال ایجاد میکنه آبروی سیستم رو میبره و اعتماد مشتری از بین میره.
ممکنه سایت من خیلی بهینه نباشه اما با یه مقدار هزینه بیشتر و گرفتن هاست با توان بالاتر مشکل حل بشه اما به هر حال من باید بتونم برآوردی داشته باشم که حداقل به فلان میران توانایی روی هاست نیاز دارم که پاسخگوی کارم باشه. این برآورد رو به چه شکلی باید به دست آورد؟

d_derakhshani
دوشنبه 04 اردیبهشت 1391, 20:57 عصر
اول اينو بگم كه 250 كاربر عدد بسيار پايينيه. سايتي سنگين حساب ميشه از 10000 تا به بالا كاربر داشته باشه. حدود 3000 تا 5000 متوسطه. اما شما نمي تونيد رو اين حساب كنيد چون ممكنه رو هاست شما سايتي باشه كه 1000 تا كاربر فعال داشته باشه و يا چند تا از اين سايت ها باشن. اما اگه بهينه نوشته باشيد(نه خيلي) با 250 تا كاربر نبايد مشكلي باشه. اما در هر صورت براي كارهايي اين چنيني سرور اختصاصي مي گيرن تا ريسك و 0 برسونن.

aminghaderi
دوشنبه 04 اردیبهشت 1391, 21:26 عصر
حدود 250 تا لاگین رو من در روز داشته باشم و این مساله هم برام روشن باشه که اینا از حدود 9 صبح تا تقریبا 5 یا 6 بعد از ظهر یه بند در داخل سیستم حضور دارن و با فواصل غیر منظم عملیاتی هم انجام میدناین یعنی حد اقل بین 200 تا 250 نفر آنلاین ؟!
اگر درست فهمیدم فکر می کنم باید یه سرور قوی اجاره کنید .(در رابطه با انتخاب هاستینگ می تونم به شما از طریق پ خ راهنمایی بدم و چندین هاستینگ مطرح و اول کشور رو معرفیتون کنم تا وجه تبلیغی نداشته باشه).
و این که هر سرور توانایی تحمل تعدادی از کاربر ها رو بیشتر نداره و برای تحمل ظرفت بالا تر چند سرور رو به هم اتصال می دهند که حالا بحث های تخصصی شبکه و هاستینگ رو به همراه داره که من زیاد ازش اطلاعاتی ندارم.

bade saba
سه شنبه 05 اردیبهشت 1391, 00:01 صبح
اول اينو بگم كه 250 كاربر عدد بسيار پايينيه.


این یعنی حد اقل بین 200 تا 250 نفر آنلاین ؟!
اگر درست فهمیدم فکر می کنم باید یه سرور قوی اجاره کنید

من الان این تناقض رو چه جوری حل کنم؟؟؟:متفکر:

حالا اصلا فرض کنیم که من سرور اختصاصی گرفتم، بازم سوال من سر جاشه و حل نشده مونده، سوال من اینه که وقتی فرد میدونه که حدودا چقدر کاربر داره چجوری میتونه تخمین بزنه که سرورش چقدر توان باید داشته باشه، من یه فرمول یا روش محاسبه یا بالاخره یه چیزی که به من بگه من تقریبا چه امکاناتی نیاز دارم، سرورم چه cpu ای باید داشته باشه چقدر ram چه میزان پهنای باندی باید براش در نظر گرفته شده باشه و ... . من نمیخام برم یه سرور اختصاصی با هزینه 3 میلیون در سال بگیرم بعد بفهمم یه سرور که هزینه سالانش 1 میلیون بوده هم کار من رو راه مینداخته

d_derakhshani
سه شنبه 05 اردیبهشت 1391, 09:25 صبح
این که من میگم 250 عدد پایینه به استناد کتاب Ultra Fast ASP.Net که تعداد کاربران بالا رو بین 10000 تا 100000 میدونه و به استناد یکی از پروژه های در حال انجام توسط اینجانب که حدود 5000 نفر کاربر آنلاین داره(و همچنین مشاهدات شخصی پروژه های دوستانم که حدود 8000 تا 10000 کاربر داره و با سرعت خوبی کار می کنن) و استناد اینکه IIS می تونه حدود 6000 کانکشن آنلاین رو مدیریت کنه خدمت شما عرض می کنم 250 عدد پایینه. اما همونطور که گفتم به این بستگی داره یک سرور چقدر مشغول باشه و شما چقدر منابع از اون بگیرید. ببینید 250 نفر درسته آنلاین هستند اما 250 نفر در آن واحد از سرور کار نمی کشند بلکه در زمان های خاص هر کدوم سرویسی از سرور می گیرند. در آن واحد شاید حدود 20 تا 60 نفر حداکثر به صورت تخمینی وصل باشن به سرور. اما اگه شما بخواهید به ازای هر کاربر آنلاین دیتا هایی رو روی سرور کش نگه دارید که حجم این دیتا ها هم کم نباشه اون وقت دارید از سرور منابع بیشتری می گیرید به شکلی که هر 250 نفر به سرور متداوم فشار میارن. اگه سایت های دیگه ای هم در حال استفاده از سرور وب و همچنین دیتابیس سرور باشن اون موقع کار شما تحت تاثیر قرار می گیره. در مورد فرمول هم بگم که فرمول خاصی وجود نداره اما با بررسی اینکه سایت شما در چه دسته ای قرار می گیره(سبک، متوسط، نیمه سنگین یا سنگین) میشه مشخصاتی رو برای سرور تخمین زد. برای کار شما اگه سایت تون غیر بهینه نباشه(نمیگم بهینه) یک سرور با مشخصات معمولی(4 هسته-2 گیگ رم و ...) کافیه

aminghaderi
سه شنبه 05 اردیبهشت 1391, 13:17 عصر
من به استناد سرور های دانشگاه آزاد واحد مشهد در سال های 78 تا 88 گفتم که توانایی تحمل 250 نفر رو آنلاین نداشت ؟! (iis6) ، و پس از کلی بررسی و مشاوره با اساتید در این زمینه تصمیم گرفته شده چندین سرور برپا کنند ، سر این مسائل من چندین ساعت با اساتیدم صحبت کرده بودم و علت رو فشار وارده بر سرور ناشی از کانکشن های بالا و البته Transfer دائم در آن واحد تشخیص داده بودند که من می گفتم چرا از php استفاده نمی کنند و اونها اتصال چندین سرور رو به هم و توزیع برنامه رو در سیستم های مثل گوگل رو برای من مثال و توضیح دادند.
و من تا حدی در جریان کار بودم. اطلاعات بیشتر هم به مرکز فناوری اطلاعات اون مراجعه شود .
اما کار تخصصی خود من هم همین هست ولی حقیقت امر تا حالا برای من 250 نفر آنلاین تا بحال در سیستم های طراحی شد توسط من به وجود نیامده .

این که من میگم 250 عدد پایینه به استناد کتاب Ultra Fast ASP.Net که تعداد کاربران بالا رو بین 10000 تا 100000 میدونهمن هم در پاسخ قبل می خواستم اماری از کانکشن های مورد تحمل iis بدهم ولی حقیقت هر چه فکر کردم یادم نیامد ولی شما درست می فرمایید من هم همین مورد رو در جای دیگر مطالعه کرده بودم. ولی به نظر من همه چیز به هم وابسته است ، سخت افزار ، پهنای باند ، طراحی و تولید بهینه .
اگر سرور قوی نداشته باشیم همون 250 تا می تونه کار دست ما بدهد اما سرور با مشخصات که فرمودید فکر کنم برای دوستمان خوب باشد .(من که تجربه 500 نفر آنلاین رو نداشتم و الانم ندارم و از تجربه شما استفاده می کنیم. )


اما 250 نفر در آن واحد از سرور کار نمی کشنداین خیلی مهمه سرور های دانشگاه که Down می شد مشکل اصلی این بود که 150 کاربر به طور همزمان ازش کار می کشیدند ؟! مثال بارزش انتخاب واحد همزمان و حذف و اضافه بود. دقیق خاطرم نیست ولی فکر کنم 150 نفر به 155 نفر می رسید جواب نمی داد ولی بعد که سیستم توزیع شده دیگه این مشکل رو نداشتند و شما می تونستی از لیست سرور ها کمترافیک ترین رو انتخاب کنی و واردش شوی . الانم که 2 سالی هست ازش خبری ندارم.

bade saba
سه شنبه 05 اردیبهشت 1391, 23:31 عصر
در مورد فرمول هم بگم که فرمول خاصی وجود نداره اما با بررسی اینکه سایت شما در چه دسته ای قرار می گیره(سبک، متوسط، نیمه سنگین یا سنگین) میشه مشخصاتی رو برای سرور تخمین زد.

ممنون میشم بگید به چه شکل میشه این کار رو کرد؟