تاثیر سرعت پردازنده، رم و I/O روی عملکرد سرور
تاثیر سرعت پردازنده، رم و I/O روی عملکرد سرور
وقتی که زمان انتخاب یک شرکت هاستینگ و پکیج هاستینگ می رسد شما باید چه مشخصات از سرور را در نظر بگیرید؟ شما چگونه تصمیم می گیرید که سرعت کلاک چند گیگاهرتزی برای پردازنده شما کافیست و شما چقدر رم لازم دارید؟ وقتی که فضای دیسک سرور شما تمام می شود چه باید بکنید؟ در واقع کانفیگوراسیونی که برای هدف شما لازم است چگونه تعیین میگردد. مقاله ” تاثیر سرعت پردازنده، رم و I/O روی عملکرد سرور ” را بخوانید تا به ساده ترین صورت ممکن کیهان سرور به شما پاسخ دهد.
در مقاله ” تاثیر سرعت پردازنده، رم و I/O روی عملکرد سرور ” ما می خواهیم روی سخت افزارهای پایه ای که هر سیستم کامپیوتر مخصوصا سیستم های سروری، دارد بحث کنیم. ما می خواهیم در مورد پردازنده ها، رم ها، نوشتن و خواندن از دستگاه های ذخیره سازی (I/O) صحبت کنیم چونکه هر کدام از این موارد روی عملکرد سور شما تاثیر می گذارد. همانطور که در مقالات گذشته گفتیم شما هر چه قدر سخت افزارقوی تری داشته باشید بهتر است اما باید محدودیت هزینه را در نظر بگیرید. امیدوارم این مقاله به شما کمک کند تا تصمیم بگیرید که چگونه در هزینه های خود صرفه حویی کنید و یا حداقل درکی در مورد آنچه که باید برای اولین بار ارتقاء دهید (اگر سرور شما عملکرد مناسبی را ارائه نمی دهد) را به شما بدهد.
چند تفکر عمومی درباره سخت افزار سرور
به طور کلی بیشتر به معنای بهتر و سریعتر است اما ممکن است شما از یک سخت افزار که دارای قدرت بیشتری است نفع نبرید. سایت های مختلف بر اساس نیازهایی که دارند و بر اساس نوع سایت، مقدار ترافیکی که به طور منظم دریافت می کنند و مدت زمانی که ترافیک دارند به سخت افزارهای متفاوتی نیاز دارند. عملکرد می تواند به نوع سخت افزاری که در حال حاضر سرور شما استفاده می کند بستگی داشته باشد. در برخی از پکیج های هاستینگ شما انتخاب زیادی در مورد سخت افزار ندارید. به عنوان مثال شرکتی که از پلن های هاستینگ اشتراکی استفاده می کند گزینه های زیادی برای انتخاب ندارد. با این حال در سرورهای اختصاصی یا VPS شما می توانید پلن ها را بر اساس مقدار سخت افزاری که می خواهید انتخاب کنید در این حالت باید به چه مواردی توجه کنید؟ به طور کلی سه چیز اصلی که شما باید در نظر داشته باشید مشخصات پردازنده، رم و I/O است.
- واحد پردازش مرکزی (CPU) – دستورالعمل ها را اجرا می کند.
- حافظه دسترسی تصادفی (RAM) یک کنترلر مابین پردازنده و I/O است.
- ورودی / خروجی ذخیره سازی (I/O) – میزان سرعتی که داده از استوریج خوانده می شوند و یا مدت زمانی که طول می کشد داده ها در استوریج یا دستگاه ذخیره سازی نوشته شوند.
وقتی که شما یک اکانت هاستینگ داشته باشید شما باید به آن لاگین کنید و ببینید چه مقدار پردازنده، رم و فضای ذخیره سازی را برای سایت خود استفاده کرده اید و پلن خود را مطابق با آن تنظیم کنید.
واحد پردازش مرکزی (CPU)
واحد پردازش مرکزی (CPU) مغز سرور شما می باشد. پردازنده دستورالعمل ها را تفسیر و اجرا می کند. پردازنده کوئری ها یا درخواست های پایگاه داده را اجرا می کند و این داده ها را پردازش می کند. CPU دستورات برنامه نویسی را اجرا می کند و کارها را انجام می دهد. سایت های استاتیک پردازنده زیادی را لازم ندارند چونکه تعداد زیادی اجرا یا تفسیر را ندارند. اگر سایت شما از سیستم مدیریت محتوا استفاده نمی کند و صفحات HTML استاتیک دارد شما احتمالا نیازی به نگران شدن در مورد مقدار پردازنده ای که استفاده می کنید ندارید. در مقابل اگر سایت شما CMS استفاده می کند و یا دارای کدنویسی های سفارشی است مهم است که به مقدار پردازنده ای که در اختیار می گیرید توجه داشته باشید چونکه روی نحوه اجرای سایت شما تاثیر می گذارد. یک سرعت کلاک سریعتر (بیشتر از گیگاهرتز) به معنای این است که دستورالعمل های بیشتری در هر ثانیه اجرا می شوند. دستورالعمل های بیشتر در هر ثانیه به معنای عملکرد بهتر می باشد. هر چقدر که بازدید کننده و پایگاه داده بیشتری داشته باشید سایت شما بیشتر نیاز به اجرای دستورالعمل ها خواهد داشت و شما باید پردازنده بیشتری را خریداری کنید. اگر شما پردازنده بیشتری داشته باشید این سرور به صورت سریعتر و کارامدتری می تواند اجرا شود. پردازنده های چند هسته ای به معنای این است که دستورالعمل های بیشتری می توانند اجرا شود بنابراین این پردازنده ها می توانند در همان تایم زمانی عملیات بیشتری را انجام دهند. یک پردازنده چند هسته ای یا پردازنده چند نخی به شما اجازه اجرای دستورالعمل های بیشتر را در تایم زمانی یکسان را می دهد. در پردازنده های چند هسته ای وقتی که هسته اول مشغول انجام کار است هسته دوم می تواند دستورالعمل ها را اجرا کند با این حال انتظار نداشته باشید که پردازنده 4 هسته ای نسبت به یک پردازنده تک هسته ای 4 برابر سریعتر باشد و یا کارآمدی 4 برابری داشته باشد، در این حالت شما بهبود هایی را خواهید داشت اما 4 برابر افزایش را نخواهید داشت. پردازنده های چند نخی به شما اجازه می دهند تا به صورت همزمان چند بخش از یک فرایند یک چند نخ از کد را اجرا کنید. اگر در تمام این سری ها یک تم در حال اجرا دارید از مزیت کش کردن که به طور کلی برای عملکرد خوب است استفاده کنید. حافظه کش یک حافظه موقت است که پردازنده می تواند برای ذخیره دستورالعمل های برنامه ای که بیشتر به آن مراجعه می کند استفاده کند. کش ممکن است به طور مستقیم در تراشه پردازنده ادغام شده باشد و ممکن است روی خود تراشه قرار گرفته باشد و دسترسی مستقیمی به پردازنده داشته باشد. در هر صورت کش به شما کمک می کند تا پردازنده به صورت سریعتری کار کند. اگر گزینه ای برای انتخاب دارید بهتر است حافه کش بیشتر را انتخاب کنید حافظه کش بیشتر به این معناست که دستورالعمل ها و داده های بیشتری می توانند برای دسترسی سریعتر به صورت موقت ذخیره شوند.
حافظه دسترسی تصادفی (RAM)
رم یک حافظه کوتاه مدت است. RAM به صورت موقت دستورالعمل های اجرایی و داده ها را ذخیره می کند تا بتواند این اطلاعات را سریعتر به پردازنده منتقل کند. رم شبیه به حافظه کش پردازنده است که بدان اشاره کردیم اما یک تراشه متفاوت است و معمولا برای ذخیره سازی بیشتر ارائه می شود. پردازنده به صورت کندتری به رم دسترسی پیدا می کند اما ما در مورد زمان نانو ثانیه ای صحبت می کنیم. حجم رم سرور تعداد پردازش هایی که پردازنده می تواند در هر زمان خاص انجام دهد را کنترل می کند. به همین دلیل رم به عنوان حافظه کاری اشاره می شود. رم بیشتر به معنای داده ها و دستورالعمل های بیشتری است که پردازنده می تواند به صورت مستقیم به آنها دسترسی داشته باشد. اگر چیزی در رم ذخیره نشده باشد باید قبل از اینکه پردازنده کاری انجام دهد این اطلاعات به رم انتقال داده شوند.
- به طور کلی با افزایش رم شاهد افزایش فابل توجه عملکرد خواهید شد بنابراین احتمالا شما می خواهید رم زیادی را خریداری کنید اما باز هم این خرید به مشخصات سایت شما بستگی پیدا می کند. حتما راهنمای خرید رم برای افزایش سرعت و عملکرد سیستم را مطالعه کنید.
مثل پردازنده، سایت های استاتیک به رم خیلی زیادی نیاز ندارند چونکه اطلاعات و دستورالعمل های برنامه نویسی برای ذخیره سازی ندارند. با فرض اینکه یک سایت داینامیک یا پویا را اجرا می کنید احتمالا با افزایش رم در سرور خود بیشترین افزایش عملکرد را خواهید داشت مخصوصا اگر شما محتوای صفحه را کش کرده باشید و در نتیجه وابستگی کمتری به سرعت ورودی / خروجی خواهید داشت. اطلاعات ذخیره شده در رم برای پردازنده دسترسی سریعتر را نسبت به اطلاعاتی که در هارد ذخیره شده اند به ارمغان می آورد. اگر شما سایت استاتیک دارید احتمالا می خواهید در مورد رم و پردازنده بیشتر فکر کنید اما در واقع شما دارید به رم بیشتر از آنچه که سایت استاتیکتان نیاز دارد فکر می کنید. سایت های استاتیکی که نیاز به رم کمتری دارند معمولا نیاز به پردازنده کمی هم دارد. با این حال وقتی که شما رم بیشتر از 4 تا 6 گیگابایت را خریداری می کنید پردازنده شما احتمال عامل محدود کننده ای برای عملکرد سرور شما خواهد بود، بنابراین در حالی افزایش رم خوب است که شما واقعا به آن نیاز داشته باشید. شما باید به تاخیر و سرعت رم نیز توجه داشته باشید شما باید رم سریعتر (که دارای مگاهرتز بیشتر است) را انتخاب کنید هر چند شما به بیشتر از 1600 مگاهرتز نیاز ندارید. شما همچنین باید رمی که دارای تاخیر کمتری است را خریداری کنید. LC8 بهتر از LC9 است و LC9 بهتر از LC10 است. اگر علاقمند هستید در مورد تاخیر رم اطلاعات مهمی کسب کنید مقاله ” تاخیر و سرعت حافظه کامپیوتر ” مطالعه کنید.
ذخیره سازی و سرعت ورودی / خروجی (I/O)
اینکه به چه مقدار فضای ذخیره سازی نیاز دارید به نیاز های خاص فعلی و آینده سایت شما بستگی پیدا می کند. نکته اصلی که باید برای عملکرد خود دسترسی داشته باشید میزان سرعتی است که برای نوستن داده ای جدید در دیسک و خواندن اطلاعات از دیسک لازم است. به طور کلی استفاده از هاردهای SSD ( درایو حالت جامد) برای ذخیره سازی ایده آل است. عدم وجود قطعات مکانیکی باعث می شود که هاردهای SSD نسبت به هاردهای مکانیکی سنتی (HDD ها) سرعت بیشتری داشته باشند. اگر در سایت شما تعداد زیادی فیلم یا فایل صوتی وجود دارد به سرعت ورودی / خروجی بیشتری نیاز خواهید داشت تا فایل های حجیم از هارد انتقال داده شوند. سایت های دینامیک همچنین از سرعت ورودی / خروجی بیشتری برای انتقال داده ها به / از پایگاه داده استفاده می کنند.
- همانطور که چند بار اشاره کردیم، اینکه در نهایت چه سخت افزاری را خریداری کنید به مشخصات سایت شما بستگی پیدا می کند و به طور کلی سروری که دارای مشخصات بهتری است به احتمال زیاد منجر به عملکرد بیشتر خواهد شد و سرور می تواند به صورت سریعتری به درخواست ها پاسخ دهد.
در اینجا چند مورد از نکات مهم وجود دارد که نیاز به در نظر گرفتن و به خاطر سپردن دارند.
- اگر سایت استاتیک دارید احتمالا کمتر درگیر مسائل ذکر شده می شوید.
- اگر سایت دینامیکی دارید نیاز به I/O سریعتری برای خواندن و نوشتن اطلاعات دارید و معمولا نیاز به پردازنده ای بهتر برای پردازش اطلاعات خواهید داشت. در اینجا رم هم از اهمیت خاصی برخوردار است مخصوصا اگر شما می خواهید مزایای کش کردن صفحات را داشته باشید.
- سایت های سنگین احتمالا نیاز به رم بیشتری دارند تا پردازنده بتواند به دستورالعمل های بیشتری دسترسی پیدا کند و سریعتر دستورات را اجرا کند، تنها چیزی که شما نیاز دارید ارتقاء پردازنده تان است.
- اگر سایت شما تعداد زیادی فایل های صوتی و تصویری را در سرور ذخیره کرده است پس مهم است که سرعت I/O خود را افزایش دهید.
اطلاعات مورد نیاز صفحات سایت شما در دیسک یا هارد ذخیره می شود. برای دسترسی سریعتر به اطلاعات باید سرعت نوشتن و خواندن (I/O) سریع باشد تا بتوان این اطلاعات را به رم انتقال داد.
مقدار رم شما تعیین می کند که هر بار پردازنده به چه مقدار اطلاعات می تواند دسترسی داشته باشد. رم بیشتر به این معناست که پردازنده می تواند به دستورالعمل های بیشتری دسترسی پیدا کند در نهایت مقدار سرعت پردازنده می تواند بر اساس مقدار پردازش و محاسباتی که می تواند انجام دهد تعیین شود.
جمع بندی
بسته به نوع پکیج هاستینگی که خریداری می کنید ممکن است اطلاعاتی در مورد مشخصات سرور خود داشته باشید. اگر شما سرورهای اختصاصی یا VPS را خریداری کرده اید شما می توانید گزینه های بهتری را برای خرید انتخاب کنید. برای اکثر سایت هایی که در سرورهایی با حداقل مشخصات هستند رم احتمالا بهترین خرید برای شما باشد مگر اینکه سایت شما از فایل های صوتی، تصویری سنگینی استفاده کند. بعد از اینکه رم شما به 4 تا 6 گیگابایت رسید بهتر است به سمت ارتقاء پردازنده خود بروید. امیدوارم مقاله ” تاثیر سرعت پردازنده، رم و I/O روی عملکرد سرور ” رضایت شما را جلب کرده باشد.