تفاوت سرور مجازی ایران و خارج ؛ کدام بهتر است؟

انتخاب یک سرویس میزبانی قوی برای سایت و یا مستقر کردن برنامه ها و اپلیکیشن های تحت وب می تواند مسئله ای باشد که خیلی از کاربران و همینطور وب مستر ها به دنبال آن هستند. یکی از کاربردی ترین و بهترین سرویس هایی که می توان آن را هم از نظر کنترلی که در اختیار کاربران قرار می دهد و هم از نظر کیفیت سرویس و تضمینی بودن منابعی که دارد جزو بهترین گزینه ها برای اینکار معرفی کرد، سرور مجازی است. وقتی که شما به سراغ سرویس های مختلف سرور مجازی بروید می توانید تفاوت های زیادی را از سیستم عامل گرفته تا منابع آنها به وضوح ببینید اما یکی از مواردی که همیشه پر رنگ تر بوده تفاوت سرور مجازی ایران و خارج می باشد که در این مقاله می خواهیم در مورد آن به تفصیل صحبت کنیم.

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

 

سرور مجازی خوب چه کاری را انجام می دهد

سرور مجازی را می توان یکی از پرطرفدارترین سرویس های وب دانست که وقتی کسی به یک سیستم قوی برای میزبانی یک سایت سنگین، بزرگ و پر بازده نیاز دارد اولین گزینه ای که به سراغ آن می رود همین است. در این مورد باید بگوییم که سرور مجازی در واقع یک نوع از سرویس های ارائه شده توسط دیتاسنتر ها است که با نام تخصصی PaaS یا همان Platform as a Service شناخته می شود. معنای این اسم این است که شما یک پلتفرم را به عنوان سرویس از طرف هاستینگ و یا دیتاسنتر خود دریافت می کنید. یک پلتفرم که می تواند یک سیستم عامل ویندوزی یا لینوکسی باشد و این قابلیت که برنامه های مختلف را روی آن نصب کرده و یا وب سرور برای برنامه خود را روی آن راه اندازی کنید، در اختیار شما قرار خواهد داد.

سرور خوب چه کاری انجام می دهد

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

یکی از مهمترین ویژگی هایی که سرور مجازی دارد و می تواند به عنوان برتری نسبت به سایر سیستم هایی که از آن استفاده می کنند از آن نام ببریم ارائه امکانات کنترلی قوی به ماست که می توان آن را به صورتی که می خواهیم تنظیم کنیم و ماژول های مختلف امنیتی یا کاربردی را روی آن فعال و غیر فعال کنیم. در این حالت شما دیگر صرفا یک کنترل پنل ندارید که بتوانید فایل ها و سرویس های رگولار سایت خود را مشاهده کنید و صرفا از آنها استفاده کنید، بلکه یک سیستم کامل و البته مجازی سازی شده در اختیار شما است که می توانید امکاناتی که لازم دارید را از آن دریافت کنید.

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

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

 

تاثیر موقعیت قرار گیری در خوب بودن یک سرور

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

سرور مجازی ایران و خارج

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

استخوان بندی اصلی این شبکه های کوچکتر را دیتاسنترها و ISP های مادر و بزرگی مانند گوگل، آمازون، AT&T و مایکروسافت تشکیل داده اند و اصلی ترین المانی که این شبکه ها از آن استفاده می کنند سرور ها هستند. درست است که کلیه اطلاعات و مواردی که ما با استفاده از آنها به اینترنت وصل می شویم المان های نرم افزاری هستند، اما این نرم افزار ها روی سخت افزار هایی در جای جای دنیا قرار دارند، ذخیره سازی شده و اجرا می شوند و وقتی که شما به داده ای نیاز داشته باشید که روی یکی از این سرور ها است باید یک خط ارتباطی بین شما و این داده و برنامه که ممکن است دقیقا در سروری در آن طرف کره زمین قرار گرفته باشد ایجاد شود.

بدیهی است هر چه داده نزدیک تر باشد، سرعت دستیابی به آن بیشتر می باشد. اما این موضوع که سرور هایی که در دور دست قرار گرفته اند قوی تر بوده و می توانند با تجهیزات بیشتر و بهتری که دارند و همینطور با زیرساخت های پر سرعت اینترنتی و عدم وجود کنترل ترافیک و تحریم ها و موارد مربوط به آن کیفیت سرویس خوبی را فراهم کنند هم به هیچ عنوان قابل انکار نیست! پس می توان گفت که هر کدام از المان های قدرت و کیفیت سرور و همینطور نزدیک بودن آن و ترافیک داخلی سریع ارزش ها و نکات مربوط به خود را ارائه می کنند.

سرور مجازی یک سرویس میزبانی در لول های پایین شبکه است که می توان گفت به نوعی می تواند یک سرویس بی واسطه از این شبکه های تشکیل دهنده اینترنت و یا یک سرویس با یک یا دو واسطه باشد که مستقیم از بستر سخت افزار گرفته می شود و تاثیرات لوکیشن و قرار گیری سرور ها روی آن بسیار بالا خواهد بود. همینجاست که موضوع تفاوت سرور مجازی ایران و خارج معنی پیدا می کند و باید انتظار داشت که این تفاوت ها زیاد هم باشند.

قبل از اینکه به بررسی موردی تفاوت سرور مجازی ایران و خارج بپردازیم باید این موضوع را بررسی کنیم که این تفاوت ها از کجا می آیند و اینکه هر کدام از سرویس های داخلی و خارجی چه ویژگی هایی دارند را مورد بررسی قرار داد. در ادامه هر کدام از این دو سرویس و نقاط قوتی که دارند را با هم به صورت مختصر بررسی می کنیم.

نقش موقیت سرور مجازی

 

سرور مجازی داخلی یک سرور با کیفیت

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

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

کیفیت سرور داخلی

البته تفاوت هایی در این سرور وجود دارد. در مورد سرور های داخلی باید گفت که از آنجا که در داخل قرار دارند، سرعت برای کاربران داخل کشور عالی خواهد بود اما برای کاربران خارج از کشور و یا کسانی که از VPN استفاده می کنند سرعت افت هایی خواهد داشت و باید گفت که این یک موضوع طبیعی است. البته باید گفت که این سرور ها با توجه به بالاتر بودن سرعت و این موضوع که عموم ترافیک یک سایت فارسی زبان از داخل ایران است، می تواند گزینه ای خیلی خوب باشد. نقاط قوت این نمونه از سرور مجازی را می توان به صورت کلی سرعت بالا در داخل ایران، و همینطور هزینه اقتصادی و به صرفه بودن آن معرفی کرد.

اکنون ما می دانیم که سرور مجازی ایرانی از کجا پیدا می شود و در چه مواردی برتری دارد، اما اگر بخواهیم تفاوت سرور مجازی ایران و خارج را با هم بررسی کنیم لازم است که توضیحاتی را در مورد این سرور ها نیز ارائه کنیم که می تواند به ما در انتخاب بهتر کمک کند و ببینیم که این سرور ها در چه بخش هایی برتری دارند.

سرور مجازی ایرانی

 

سرور مجازی خارجی چه ویژگی هایی دارد

یکی دیگر از سرویس هایی که می توان آن را هم در بین سایر سرویس هایی که هاستینگ ها ارائه می کنند در نظر داشت، سرور های مجازی خارجی هستند که می توان از مهمترین و پرکاربردترین آنها به سرور مجازی فرانسه و همینطور سرور مجازی آلمان اشاره کرد. این دو نوع سرور مجازی که در بین سرور های مجازی خارجی از محبوبیت بیشتری برخوردارند ویژگی های بی نظیر سرعت بالا، آپتایم نزدیک به 100 و همینطور قوانینی سازگار با شرایط خاص ایران دارند و می توان آنها را از بهترین انواع سرور های موجود نام برد که توسط دو دیتاسنتر هتزنر آلمان و همینطور او وی اچ فرانسه ارائه می شوند.

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

همینطور که در ابتدای مقاله اشاره کردیم می توان گفت که سرور مجازی اروپا یک سرویس فوق العاده با کیفیت است که از نظر آپتایم و بالا بودن دائمی می تواند بهترین تضمین کیفیت را ارائه کند، همینطور به شما این امکان را می دهد که یک سیستم در خارج از کشور داشته باشید که با استفاده از آن تمام تحریم ها را دور بزنید. سرویسی مانند سرور مجازی بایننس این کار را برای شما انجام خواهد داد و همانطور که در مقاله کاربرد سرور مجازی بایننس در مورد آن توضیح دادیم می تواند برای شما مانند یک پل عمل کند.

البته باید این موضوع را در نظر داشت که خیلی از دیتاسنتر های خارجی مانند دو ارائه دهنده ای که از آنها نام بردیم با ایران سازگاری نداشته و به طور فرض اگر شما از یک دیتا سنتر بزرگ مانند مایکروسافت یک سرور مجازی تهیه کرده و آنها متوجه این موضوع شوند که سرویس از داخل ایران مورد استفاده قرار می گیرد، بلافاصله اکانت شما مسدود  شده و ممکن است تمام اطلاعاتی که دارید هم از بین برود.

ویژگی های سرور مجازی خارجی

پس باید در زمان استفاده از کیفیت بالای سرور مجازی خارجی به این موضوع هم توجه داشته باشید که عوامل اینچنینی و اختلالات اینترنتی که کم هم نیستند می توانند در مواردی کار شما را خراب کنند و در سرویسی که دارید تداخل هایی به وجود بیاید. اما در مورد اینکه با وجود تمامی این موارد تفاوت سرور مجازی ایران و خارج این که کدام را باید انتخاب کنیم و چه سرویسی می تواند برای ما مفید باشد موردی است که آن را در ادامه با هم بررسی خواهیم کرد.

 

تفاوت سرور مجازی ایران و خارج در انتخاب سرویس

اکنون ما به صورت حدودی با این موضوع که تفاوت سرور مجازی ایران و خارج در چه هستند و چه ارائه دهندگانی این سرویس ها را ارائه می کنند و نقاط ضعف و قدرت هر کدام از این سرویس ها به چه صورتی می باشد، نوبت به این رسیده است که تفاوت سرور مجازی ایران و خارج را به صورت موردی و جز به جز بررسی کنیم و این موضوع که این تفاوت ها برای کاربرد های مختلف به چه صورتی عمل می کنند را با هم بررسی کنیم.

در این بخش به صورت تک تک تمامی موارد تفاوت سرور مجازی ایران و خارج را بررسی می کنیم و اینکه هر کدام از این دو سرور در چه موردی می توانند خوب باشند را مقایسه کرده تا شما بتوانید سرویسی که برای خود نیاز دارید را پیدا کنید.

مهمترین موارد تفاوت سرور مجازی ایران و خارج که می تواند روی انتخاب شما تاثیر گذار باشد و تعیین کننده هستند از این قرارند:

 

آپتایم(Uptime)

آپتایم یا پایداری سرور مجازی را می توان یک معیار فوق العاده مهم در کیفیت سرور در نظر گرفت که باید بالا باشد. در مورد اینکه آپتایم چیست در مقاله تست آپتایم سایت صحبت کردیم و دیدیم که آپتایم در واقع به زمانی اطلاق می شود که یک سرور آماده به کار بوده و می تواند به کاربرانی که برای بازدید از سایت به اپلیکیشن مستقر در آن اقدام می کنند سرویس دهی کند. عموما آپتایم با عددی درصدی و در حدود 99.99 معرفی می شود. در صورتی که این آپتایم پایین باشد به هیچ عنوان نمی توان به سرور اعتماد داشت.

در مورد تفاوت سرور مجازی ایران و خارج از نظر آپتایم باید این موضوع را عنوان کرد که آپتایم برای سرویس های خارجی کاملا تضمین شده است و برای بسیاری از سرویس های ایرانی نیز قابل قبول می باشد که ممکن است بعضی از عوامل می تواند روی این موضوع تاثیرات منفی کمی بگذارند.

 در مورد اینکه این تاثیرات چیست و تا کجا پیش می رود باید بگوییم که می توان گفت تفاوت سرور مجازی ایران و خارج از این نظر زیاد نیست و می توان هر دوی این سرور ها را دارای یک آپتایم قابل قبول دانست. اما در صورتی که شما یک سایت بین المللی را راه اندازی می کنید که نیاز دارید این آپتایم همیشگی باشد و بهترین کیفیت را می خواهید بهتر سایت از سرور مجازی خارجی استفاده نمایید.

تفاوت سرور مجازی ایران و خارج از نظر آپتایم

 

سرعت سرور مجازی

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

تفاوت سرور مجازی ایران و خارج از نظر سرعت می تواند پیچیده به نظر برسد اما به صورت خلاصه می توان گفت که سرعت سرور مجازی ایران برای کاربرد های داخل کشور می تواند در حد ایده آلی باشد. در حالی که سرور مجازی خارجی امتیاز سرعت در سئو را به صورت بسیار بهتری برای شما دریافت می کند و از این نظر پیشرفته تر خواهد بود.

 

هزینه

تفاوت سرور مجازی ایران و خارج از نظر هزینه یکی از مهمترین مواردی است که می توان آن را در نظر گرفت و باید گفت که سرور های ایرانی می توانند هزینه بسیار بسیار کمتری را روی دست شما بگذارند و این مورد را به نفع خود تمام کنند. هزینه در سرور های داخلی به خاطر المان های مختلفی مانند پرداخت های ریالی به جای پرداخت های دلاری که در مورد سرور های خارجی وجود دارد، ارزان بودن ترافیک و پهنای باند داخلی و همینطور موارد مختلف دیگر مانند استفاده از برنامه های بدون کپی رایت و رایگان می تواند تا حد زیادی بهینه باشد.

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

تفاوت تفاوت سرور مجازی ایران و خارج از نظر هزینه

 

پهنای باند

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

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

این موضوع دلیل این است که بعضی از دانلود هایی که از سرور های ایران انجام می شود رایگان بوده و ترافیک آن برای شما محاسبه نمی گردد. اگر قصد راه اندازی دانلود سنتر داردی و یا فکر می کنید که پهنای باند زیادی روی سایت شما مصرف می شود، بهترین گزینه ای که می توان در این مقاله تفاوت سرور مجازی ایران و خارج به شما معرفی کرد استفاده از سرور مجازی داخلی است.

تفاوت سرور مجازی ایران و خارج در پهنای باند

 

امنیت اطلاعات

یک مورد دیگر که باید در نظر داشته باشید این است که از نظر امنیتی اطلاعات شما چه وضعیتی خواهد داشت. باید گفت که هم سیستم های خارجی و هم داخلی وضعیت امنیتی خوبی را دارند و می توان روی این موضوع حساب کرد. البته به این موضوع هم می توان اشاره کرد که حملاتی که رو سرور های خارجی انجام می گیرد عموما زودتر شناسایی شده و دفع می شوند و سرور های خارجی به دلیل استفاده از برنامه های امنیتی پرمیوم می توانند تشخیص زودتری از این گونه حملات داشته باشند. پس به طور کلی می توانیم برای سرور مجازی خارجی یک امتیاز ویژه در این زمینه قائل شویم.

 

قوانین و مقررات

از نظر اینکه تفاوت سرور مجازی ایران و خارج از نظر قوانین و مقرراتی که دارند به چه صورت است باید گفت که هر ارائه کننده ای قوانین خود را دارد اما به طور کلی می توان دو مورد دردسر ساز را در این میان نام برد که اولین مورد قوانین فهرست مصادیق مجرمانه در سرور های ایران است که حتی لینک دانلود بعضی از بازی ها را حذف خواهد کرد و مورد دیگر قوانین تحریم ها در مورد سرورهای خارجی هم باید بگوییم شما معمولا حتی نمی توانید یک برنامه کرک شده ساده را روی سرور  خود داشته باشید و در این صورت سرور شما قفل خواهد شد.

پس هر دو طرف قوانین خود را دارند و اگر می خواهید که کار خود را درست پیش ببرید باید این موضوع که شما نیاز به چه قوانینی دارید و می خواهید چه کاری را شروع کنید را به خوبی بررسی کنید.

به طور کلی می توان گفت که تفاوت سرور مجازی ایران و خارج از نظر قوانین و مقررات کاملا به کاری وابسته است که شما می خواهید این سرور مجازی برای شما انجام دهد.

تفاوت سرور مجازی ایران و خارج از نظر قوانین

 

نتیجه گیری

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

 

آموزش CentOS (دستورات کاربردی برای تازه کاران)

وقتی شما یک سایت اینترنتی را راه اندازی کنید، باید به این موضوع توجه داشته باشید که برای کنترل آن از طریق سرویس های میزبانی خود راه حلی را پیدا کنید. دستورات سرور و کنترل مستقیم آن سطح بالاترین روشی است که می توان از آن برای بالا بردن بازدهی سایت استفاده کرد. البته در صورتی که میزبانی سایت شما به وسیله هاست باشد شما باید این ارتباط را از طریق کنترل پنل خود و SSH برقرار کنید. اما به طور کلی می توانیم بگوییم برقراری ارتباط با سرور و استفاده از دستورات کنترلی آن موردی است که هر وبمستر باید به صورت حدودی این مهارت را داشته باشد. CentOS را می توان به عنوان متداول ترین سیستم عامل سرور ها معرفی کرد و در این آموزش CentOS ما به معرفی دستورات کاربردی و حرفه ای این توزیع لینوکس می پردازیم.

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

 

CentOS چیست

در مورد این توزیع از لینوکس نیز مانند تمامی ورژن های دیگر می توانیم بگوییم که یک سیستم عامل اوپن سورس و رایگان است. اما این سیستم عامل بخش اصلی قدرت خود را مدیون هسته قدرتمندی می باشد که توانایی پردازشی بالا را برای آن فراهم کرده است و به نوعی می توان این توزیع را یکی از توزیع های قدرتمند معرفی کرد. این هسته قدرتمند لینوکس چیزی جز لینوکس RHEL یا همان ردهت اینترپرایز که تنها سیستم عامل لینوکس غیر رایگان است نیست. یک سیستم عامل قدرتمند و بزرگ از شرکت ردهت که به صورت جز به جز ترجمه می شود و CentOS را پدید می آورد.

شروع آموزش Centos

البته باید گفت که سیستم عامل CentOS در سال 2014 از RHEL و شرکت ردهت جدا شده و عدم وابستگی خود به آنها را به صورت یک اعلام استقلال سراسری عنوان کرد و گفت که در حال ارائه سیستم عامل مربوط به خود با سیاست گذاری های خاص خود می باشد. اما همچنان این پایه های اولیه RHEL بود که توانست آن را تا اینجا پیش بیاورد. به نظر می رسید این تغییرات به خاطر کند شدن و به حاشیه رفتن توسعه RHEL می باشد و CentOS تمایل دارد که رشد بیشتری را داشته باشد.

این سیستم عامل کاربردی برای اولین بار در سال 2004 منتشر گردید . شاید برایتان جالب باشد که بدانید این سیستم برای اولین بار با ورژن 2 عرضه شد. این اتفاق به دلیل این بود که اولین بار این سیستم عامل از ورژن دوم RHEL جدا شده بود و به شما این امکان را می داد که از تمامی امکانات این لینوکس قدرتمند استفاده کنید. در سال 2020 دولوپر های اصلی این سیستم عامل اعلام کردند که قرار است از این به بعد Rocky Linux را توسعه دهند و این سیستم عامل قرار است که جای CentOS را بگیرد و کاربران این سیستم عامل می توانند به این توزیع از لینوکس مهاجرت کنند. اما تا کنون که این اتفاق نیفتاده است و CentOS کار خود را به عنوان یک سیستم عامل خوب برای سرور ها انجام می دهد و طرفداران زیادی دارد.

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

همچنین پایه های این سیستم عامل از یک سیستم اینترپرایز و سازمانی کپی شده است که این عمل باعث می شود ویژگی های مدیریتی قدرتمندی را ارائه کند و برای سازمان ها و کاربرد های بزرگ و تجاری موثر باشد. بدیهی است که وقتی سیستم عاملی با این ویژگی ها وجود داشته باشد، امنیت نیز یکی از موارد مهمی است که در آن به عنوان یک اصل مهم مورد بررسی قرار گرفته است. یکی از اصلی ترین امکاناتی که باید در فضای اینترنت و وب و سرور ها مورد توجه قرار گیرد امنیت است و این یکی دیگر از مواردی است که CentOS را تا این اندازه برای استفاده در وب محبوب کرده است.

انگار که همه عوامل دست به دست هم داده اند تا CentOS را به عنوان یک گزینه ایده آل برای این کار مطرح کنند. پس می توانیم این نتیجه را بگیریم که آموزش CentOS می تواند یکی زا مهمترین و اصلی ترین موادی باشد که لازم است یک کاربر حرفه ای برای طراحی سایت خود و همینور مدیریت آن به صورت بهینه و خوب، آن را فرا بگیرد و بتواند از آن استفاده کند. در ادامه به صورت موردی به آموزش CentOS و چگونگی استفاده از دستورات آن می پردازیم. اما قبل از آموزش CentOS و اینکه دستوراتی که باید از آن استفاده کنید به چه صورت است بهتر است کمی در مورد اینکه چه روش هایی برای استفاده از CentOS وجود دارد و چگونه می توان از آن استفاده کرد کمی توضیح دهیم.

المان های آموزش Centos

 

چگونه با CentOS کار کنیم

اگر در فایل ها و مقالات مختلف آموزش CentOS چرخی زده باشید و دقت کرده باشید عموما وقتی حرف از آموزش CentOS به میان می آیند تنها موضوعی که مطرح می شود دستوراتی است که در اختیار شما قرار می گیرد. شاید با این موضوع این ذهنیت برای شما ایجاد شده باشد که شما با یک سیستم عامل از مد افتاده و قدیمی طرف هستید که مانند DOS باید با خط فرمان در آن دستور های مورد نظرتان را وارد کنید، اما باید گفت که به هیچ وجه اینطور نیست.

CentOS مانند خیلی دیگر از توزیع های لینوکس یک ظاهر گرافیکی و زیبا هم دارد و به شما این امکان را می دهد که یک دسکتاپ و میز کار لینوکسی روان که از نظر گرافیک از خیلی از ورژن های ویندوز و لینوکس دیگر هم بهتر است، کار کنید. اما این موضوع که دلیل استفاده از دستورات و خط فرمان چیست و وقتی حرف از CentOS زده می شود چرا صرفا همه دستور ها را معرفی می کنند، موردی است که کمی دقت لازم دارد.

برای این نوع ارتباط برقرار کردن با سرور می توان سه دلیل مهم را نام برد. اولین دلیل این است که معمولا دسترسی به سرور به صورت خط فرمان می باشد و شما با یک درگاه ترمینال به سرور خود کانکت می شوید. لزومی ندارد برای یک کار ساده به سراغ محیط سرور خود رفته و تنظیمات دیگری را نیز تغییر دهید. خیلی از ارائه کنندگانی که سرور اختصاصی و سرور مجازی در اختیار شما قرار می دهند این موضوع را در تعرفه های خود ذکر می کنند.

Centos چیست

مورد دیگر سنگین شدن سرور است که منابع آن درگیر پردازش گرافیک برای شما خواهد شد. معمولا کسانی که از سرور استفاده می کنند آن را برای یکی دو برنامه یا سایت نمی خرند و تعداد زیادی سایت و برنامه دارند یا برنامه ای سنگین و شلوغ روی آن قرار دارد که باید در هر لحظه کار های زیادی را انجام دهد و نمی توان ریسک ضعیف کردن آن را پذیرفت. پس مشغول کردن و دردسر درست کردن برای آن به هیچ عنوان نمی تواند کار عاقلانه ای باشد.

مورد بعدی که می توان آن را به عنوان مهمترین مورد در بین این دلایل معرفی کرد، قابلیت خوب است که اسکریپت نویسی در لینوکس برای ما فراهم کرده است و شما می توانید از آن بهره بگیرید. در بعضی از انواع آموزش CentOS به این موضوع اشاره می شود و باید گفت که کاری که شما با دستور های خط فرمان می توانید در سه خط انجام دهید، به صورت گرافیکی وقت زیادی از شما می گیرد و شما باید چند تنظیم مختلف را از جاهای مختلف پیاده سازی کنید. ترمینال در لینوکس یکی از مهمترین ابزار های کنترلی است که می توان با آن خیلی از نیاز های سرور و وب سایت را برطرف کرده و یک کنترل کامل را روی ماژول ها و برنامه های مختلف، از فولدر بندی گرفته تا تنظیمات وب سرور همه را به بهترین شکل ممکن پیکربندی کرد. در ادامه به صورت مستقیم به آموزش CentOS و دستورات کاربردی آن می پردازیم.

 

آموزش CentOS و دستورات کاربردی در آن

در این قسمت از آموزش CentOS قرار است باهم به بررسی پرکاربرد ترین دستور های این سیستم عامل بپردازیم و ببینیم که شما برای این که بتوانید به صورت کامل با CentOS کار کنید لازم است چه دستوراتی را یاد بگیرید و از آنها استفاده کنید.اولین بخش از دستوراتی که در آموزش CentOS قرار است به بررسی آنها بپردازیم دستورات کار با فایل ها و فولدر ها هستند و به این صورت می باشند:

 

دستورات کار با فایل و فولدر

در آموزش CentOS یکی از بخش های مهم کار با دستورات کاربردی ای است که با استفاده از آنها می توانید فایل ها و فولدر های مختلف را روی سرور خود به کار بگیرید. این دستور ها به این صورت می باشند:

 

دستور نمایش محتویات یک دایرکتوری و مسیر

شما با استفاده از دستور ls این امکان را خواهید داشت تا محتویات یک مسیر را نمایش داده و آنها را به صورت کامل ببینید. شما برای استفاده از این دستور باید آن را در فولدر مورد نظر خود وارد کرده و اطلاعات به شما نمایش داده خواهد شد، اشکال دیگری از این دستور نیز وجود دارد و شما برای مشاهده جزئیات بیشتر می توانید از دستور ls –l استفاده کنید و یا دستور ls –a فایل ها و دایرکتوری های مخفی را نیز به شما نمایش خواهد داد.

 

مخفی و هیدن کردن فایل ها

یکی دیگر از مورادی که در آموزش CentOS و کلا لینوکس خیلی پرطرفدار است و شاید یک آموزش عمومی به حساب بیاید، مخفی کردن فایل ها در لینوکس است که برای این کار شما باید به ابتدای نام فایل یک نقطه ” . ” اضافه کنید. در اینصورت سیستم عامل شما وضعیت نمایش فال را به هیدن تغییر می دهد. این کار در مورد کلیه سیستم های لینوکسی و سیستم عامل هایی با پایه لینوکس (مانند سیستم عامل اندروید) جوابگو است و می توانید این روش را به کار بگیرید.

دستورات کاربردی در آموزش Centos0

 

رفتن به دایرکتوری دیگر

یکی دیگر از دستوراتی که در آموزش CentOS باید توجه ویژه ای به آن بشود چگونگی رفتن به دایرکتوری دیگر است. وقتی که شما در یک دایرکتوری و یا پوشه هستید و قصد دارید تا مسیر خود را تغییر دهید قادر خواهید بود این کار را با وارد کردن دستور cd و وارد کردن ادامه مسیر به دایرکتوری دیگری بروید به عنوان مثال دستور cd /temp/bin شما را از مسیر فعلی به پوشه bin در داخل پوشه temp خواهد برد.

کپی کردن فایل یا فولدر

یکی از دستورات مهم در آموزش CentOS دستورات مربوط به کپی کردن فایل می باشد. شما می توانید فایل و یا فولدر مورد نظر خود را با استفاده از دستور cp کپی کنید. طریقه کار این دستور به این صورت است که اگر شما می خواهید یک فایل را در همان مسیر کپی کنید باید این دستور را به صورت cp File1 File2 وارد کنید. کاری که این دستور برای شما انجام می دهد این است که یک کپی از فایل File1، به نام File2 ایجاد کرده و آن را در همان دایرکتوری فعلی قرار می دهد. شما می توانید به جز کپی کردن فایل ها فولدر ها را کپی کرده و این فولدر ها را ایجاد و یا حذف کنید که در ادامه آموزش CentOS به آن می پردازیم.

 

دستورات ایجاد و حذف فولدر

یکی از دستورات و اعمال مهمی که روی فایل ها صورت می گیرد حذف آنها است. برای حذف یک فایل در سیستم عامل CentOS لازم است که از دستورات mkdir و rm –rf استفاده کنید. به عنوان مثال دستور mkdir newfolder یک فولدر جدید را با نام newfolder برای شما درست می کند و دستور re –rf newfolder همان پوشه ای که ایجاد کرده بودیم را برای ما حذف می کند. کار با دایرکتوری ها از موارد مهمی است که در آموزش CentOS باید مورد توجه قرار گیرد.

 

زیپ کردن فایل ها

استفاده از فشرده سازی یکی از تکنیک هایی است که شما با استفاده از آن می توانید حجم فایل را کاهش داده و سرور را سبک کنید، فایل را برای انتقال آماده کنید، و در نهایت تا حدودی امنیت فایل های خود را تضمین کنید. تکنولوژی Gzip که در مقاله Gzip چیست به آن پرداختیم یکی از روش هایی است که در CentOS مورد استفاده قرار می گیرد و در ادامه آموزش CentOS این مورد که چگونه از آن استفاده کنیم را باز خواهیم کرد.

برای استفاده از فشرده سازی Gzip باید در پوشه ای که فایل یا فولدر مورد نظر قرار گرفته است باشیم و از دستور gzip استفاده کنیم. به عنوان مثال gzip Files می تواند پوشه و یا فایلی با نام Files را برای ما زیپ کند. همینطور برای باز کردن این فایل ها و خارج کردن آنها از حالت فشرده دستور gunzip با سینتکس gunzip Files می تواند این کار را برای ما انجام دهد.

به جز دستورات مربوط به کار با فایل ها و فولدر ها موراد مهم دیگری در آموزش CentOS وجود دارد که باید به آنها هم پرداخته شود در ادامه به معرفی سه دستور کاربردی برای سرور می پردازیم.

زیپ کردن در آموزش Centos

 

خاموش و روشن کردن سرور

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

 

خاموش کردن سرور

یکی از راهکارهایی که در زمان حملات می توان به آن متوسل شد این است که سرور خود را خاموش کنید و یا در زمانی که سرور شما هنگ کرده است این کار ضروری می شود. برای انجام این کار می توانید از دستورات init 0 و یا shutdown استفاده کنید.

در صورتی که می خواهید سرور شما به صورت فوری و بدون انجام تنظیمات و ذخیره سازی ها خاموش شود، لازم است که از shutdown -h now برای این کار استفاده کنید.

 

لاگ اوت کردن از سرور

وقتی که شما به عنوان مدیر کار خود را با سرور انجام می دهید و می خواهید که آن را ترک کنید، نمی توانید سرور را خاموش کنید و بروید. خاموش کردن سرور به معنای داون شدن سایت ها و قطعی تمام سایت هایی است که روی آن قرار دارند. برای رفتن از سرور و ترک آن شما باید از سیستم خارج شده و در واقع لاگ اوت کنید. دستور logout می تواند این کار را برای شما انجام دهد و شما کافی است که این دستور را نوشته و اینتر را بزنید تا از سرور خارج شوید.

 

ریستارت کردن سرور

یکی از مهمترین دستورات و کاربردی ترین آنها ری استارت است که برای فعال شدن خیلی از ماژول های مهم لازم است این کار صورت گیرد. همینطور در خیلی از مواقع که سرور به دلایل مختلفی بد کار می کند، خاموش و روشن کردن آن می تواند مشکلات شما را حل کند. برای ریستارت کردن سرور شما می توانید از دستور reboot استفاده کنید. کار کردن با این دستور هم مشکل و نکته خاصی ندارد و شما باید صرفا آن را وارد کنید و اینتر را بزنید.

ری استارت کردن سرور در آموزش Centos

 

نتیجه گیری

در این آموزش CentOS به معرفی جزئی سیستم عامل CentOS پرداختیم و دیدیم که این سیستم عامل سرور پسند، چگونه کار می کند و چه روش هایی برای برقراری ارتباط با آن وجود دارد. همانطور که در آموزش CentOS دیدیم دستوراتی که این سیستم عامل به وسیله آنها کار می کند به هیچ عنوان پیچیده نیستند و شما با یک دانش نسبی می توانید سرور خود را کنترل کنید. البته دستوراتی پیچیده تر نیز وجود دارد و می توان آن را انجام داد.

گیم سرور چیست ؛ بررسی یک سرویس کاربردی

اگر یک بررسی اجمالی روی سرویس هایی که اینترنت فراهم کرده است، و کاربرد و استفاده ای که هر کدام از آنها دارند انجام دهیم، به طور قطع متوجه خواهیم شد که صنعت سرگرمی یا همان Entertainment یکی از پر استفاده ترین و پر طرفدار ترین حوزه های سرویس های اینترنتی است که طیف بزرگی از خدمات مانند سرویس های استریمینگ ویدئو، شبکه های اجتماعی، تلویزیون های اینترنتی و همینطور صنعت بازی های ویدئویی آنلاین را شامل می شود. بدیهی است وقتی چنین اتفاقاتی در سطح گسترده می افتد، خدمات اینترنتی مختلفی نیز برای ساده تر شدن و بالا بردن کیفیت این سرویس ها ارائه می شود. گیم سرور ها یکی از این موارد می باشد که قرار است در این مقاله به صورت کامل در مورد اینکه یک گیم سرور چیست و چه کاری را انجام می دهد صحبت کنیم.

قبل از بررسی این سوال که گیم سرور چیست لازم است در مورد سرور ها و اینکه چه امکاناتی را فراهم می کنند و قابلیت میزبانی چگونه روی این سرور ها وجود دارد، بیشتر صحبت کنیم و ببینیم که ساختار یک سرور به چه صورت است که آن را مناسب این کار کرده است.

 

سرور ها چه کار می کنند؟

آیا تا به حال این سوال برای شما پیش آمده است که سرور چیست و چه کاری از آن بر می آید!؟ همیشه سرور ها به عنوان یک اصل مهم تلقی شده اند و خرابی سرور به منزله قطعی سیستم ها و سرویس هایی بوده است که یک مجموعه مثل یک دانشگاه، یک بانک و یا یک سایت اینترنتی به شما ارائه می داده است. وقتی صحبت از سرویس ها و کار های کامپیوتری به میان می آید، باید در نظر داشته باشید که در هر صورت برای انجام این کار شما به یک کامپیوتر نیاز دارید. یک کامپیوتر که مثل هر سیستم کامپیوتری عادی ای، بتواند با استفاده از یک سیستم عامل که روی آن نصب شده است، اپلیکیشن ها و یا برنامه های سیستمی ای را فعال کند که داده های دریافتی از کاربر را بر اساس روند برنامه های خود پردازش کرده و یک خروجی را به کاربر ارائه کنند.

سرور چیست

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

سرویسی که از آن صحبت کردیم می تواند میزبانی یک بازی آنلاین باشد و یا برگذاری امتحانات یک مدرسه. آنچه که اهمیت دارد این است که پردازش در این سرور به گونه ای انجام گیرد که تمامی کاربران بتوانند از آن استفاده کنند. همانطور که گفته شد، سرور ها اندازه های مختلفی دارند و ممکن است از یک کیس عادی که گوشه یک اتاق قرار گرفته است، تا یک کلود بزرگ که توسط چند دیتاسنتر مختلف گرد هم آمده است و از آنها استفاده می کند، متغیر باشد. در ادامه برای اینکه بیشتر متوجه این موضوع بشویم که گیم سرور چیست باید کمی بیشتر در مورد ساختار بازی های آنلاین صحبت کنیم.

 

یک بازی آنلاین چگونه عمل کار می کند!؟

یکی از مواردی که قبل از پرداختن به این موضوع که گیم سرور چیست باید درمورد آن صحبت کنیم این است که ساختار بازی های آنلاین به چه صورت است و اصلا یک گیم سرور قرار است از چه چیزی پشتیبانی بکند. قطعا شمایی که این مقاله را می خوانید با بازی های ویدئویی و کامپیوتری آشنایی دارید و اگر یک گیمر حرفه ای نباشید، حداقل چندین باری آنها را تجربه کرده اید. بازی های آنلاین نوعی از بازی های کامپیوتری است که شما در یک جهان بزرگتر بازی کرده و علاوه بر المان های مربوط به کامپیوتر و سیستم، سایر پلیر ها نیز در آنها حضور خواهند داشت. به این صورت که شما با اجرای این بازی به یکی از هاست ها یا میزبان های بازی متصل شده و می توانید با سایر پلیر هایی که در آن هاست بازی می کنند بازی کنید.

این هاست ها با یک IP مشخص قابل دسترسی خواهد بود و شما پس از ورود به آنها می توانید به بخش امکانات بازی برای بازی آنلاین خود دسترسی داشته باشید. شما می توانید مپ های بازی، تیمی که می خواهید در آن بازی کنید و سایر موارد مربوط به کاراکتر و یا تیم مورد نظر خود را تغییر دهید. ایجاد و پیدا کردن این هاست ها روش های مختلفی دارد. شما می توانید از هاست هایی استفاده کنید که خود سازنده ارائه داده است که البته باید برای استفاده از این هاست ها نسخه های اصلی و پرمیوم بازی را تهیه کنید که در ایران این مساله کمتر مورد توجه خواهد بود.

بازی آنلاین چگونه کار می کند

یکی از روش های دیگری که در ایران هم قابل انجام بوده و در حال گسترش برای تبدیل شدن به یک مورد عمومی می باشد، استفاده از عوامل واسطه ای است که بازی های کامپیوتری را ارائه می کنند. به عنوان مثال شرکت Steam یکی از این موارد می باشد که شما با استفاده از سرویس های آن این امکان را خواهید داشت که به صورت حرفه ای به یک بازی تمام عیار وارد شوید. روش دیگری که می توان گفت یک روش متداول است استفاده از گیم سرور هایی است که توسط گیم نت ها و یا اجرا کنندگان داخلی آن می شود که در آن هاست بازی روی یک سرور داخلی و خصوص قرار گرفته و شما می توانید با وارد شدن به آن بازی آنلاین خود را انجام دهید.

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

 

گیم سرور چیست و چه کاری انجام می دهد

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

در صورتی که بخواهیم بگوییم که بهترین نوع از گیم سرور چیست باید گفت که یک گیم سرور ایده آل سروری است که بتواند برای شما قدرت پردازشی مناسب بازی هایی که می خواهید روی آن پیاده سازی کنید را ارائه دهد و همینطور یک دسترسی کامل را به شما بدهد که بتوانید با استفاده از آن کاربرانی را که به سرور شما متصل شده اند و در حال سرویس گیری از بازی های شما هستند، را به صورت کامل کنترل کنید.

گیم سرور چیست و چه کار می کند

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

 

انواع مختلف گیم سرور چیست

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

در پاسخ به سوال انواع گیم سرور چیست می توان این دسته بندی را ارائه کرد:

 

گیم سرور های اختصاصی یا همان Dedicated

سرور های اختصاصی نوعی سرور هستند که شما آنها را به صورت خام تحویل گرفته و این امکان را دارید که آنان را هر طور که می خواهید مدیریت کنید. در مورد گیم سرور نیز همین موضوع برقرار خواهد بود و شما این امکان را خواهید داشت که هر سیستم عاملی که نیاز دارید را روی آن راه اندازی کرده و بازی های مربوط به خود را روی آن راه اندازی کنید. البته تفاوت هایی بین گیم سرور اختصاصی و سرور اختصاصی وجود دارد.

بعضا خیلی از سرویس های گیم سرور اختصاصی، دسترسی سرور را به شما نداده و مانند یک هاست با استفاده از کنترل پنل های قدرتمندی مانند Cpanel کنترل را به شما واگذار خواهند کرد و شما با استفاده از آن می توانید اکانت هایی که روی بازی های مختلف گیم سرور شما وجود دارد را مدیریت کنید. اما به طور کلی در مورد این نوع از گیم سرور می توان گفت که آزاد ترین و با کیفیت ترین نوع از گیم سرور است که می تواند امکانات بسیاری را به شما بدهد.

گیم سرور اختصاصی

مورد دیگری که برای این نوع از گیم سرور ها وجود دارد این است که با توجه به منابع بالا و مناسبی که این گیم سرور ها به آن دسترسی دارند، شما می توانید بازی را به صورت مستقیم روی آن انجام داده و با توجه به پینگ درون شبکه مناسبی که دارید با استفاده از ریموت به یک سرور اصلی بازی متصل شده و از طریق همین سرور یک بازی بسیار با کیفیت را داشته باشید. پس اگر بخواهیم بگوییم بزرگترین مزیت این نوع گیم سرور چیست باید به همین موضوع اشاره کرد که شما این امکان را خواهید داشت که بازی را خودتان اجرا کنید.

 

Listen Server ها

لیست سرور ها نوع دیگری از گیم سرور ها هستند که کار آنها محدود به این است که بازی را برای شما اجرا کنند و کسانی با اتصال به آنها بتوانند از سرویسی که این سرور در اختیار میگذارد استفاده کنند. در بازی های اشتراکی مختلف مانند Call of Duty: War Zone که یک بازی در سبک شوتر و با گیم پلی آزاد است شاید در لحظه هزاران بازیکن روی سرور های مختلف در حال بازی باشند، اما در صورتی که شما به یک لیسن سرور متصل شوید، تنها با پلیر هایی بازی خواهید کرد که روی این سرور در حال بازی هستند. معمولا این سرور ها برای گیم نت های شلوغ که می توانند تعداد پلیر را تضمین کنند، مورد استفاده قرار می گیرد.

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

بازی هایی که روی این سرور ها ارائه می شود یک نقطه ضعف دارد و آن این است که اگر سرور دچار مشکلی شود و به هر دلیلی کرش کند یا داون شود، کل بازی از دست می رود و تمامی کلاینت هایی که روی آن است بازی خود را از دست می دهند. اما راه حل مشکل این گیم سرور چیست و باید چه کار کنیم!؟ برای حل مشکل قابلیتی به نام Host Migration ارائه شده است که با استفاده از آن می توان این مورد را اصلاح کرد. در صورت استفاده از این قابلیت شما این امتیاز را خواهید داشت که در صورت قطع شدن لیسن سرور بازی را از روی یک هاست و میزبان دیگر ادامه دهید تا امتیازات و بازی سایر کاربرانی که روی آن فعال هستند از بین نرود.

گیم سرور لیسن

این نوع از گیم سرور ها هزینه ای کمتر از گیم سرور اختصاصی دارند اما اگر بخواهیم هزینه های Host Migration و سایر اقدامات را نیز در نظر بگیریم می توانیم بگوییم که به نسبت قابلیت ها ندان تفاوت زیادی با گیم سرور اختصاصی نخواهد داشت. ولی اگر بخواهیم بگوییم نکته مثبت استفاده از این گیم سرور چیست باید گفت که کاربرد های خاص آن و امکان راه اندازی یک بازی بدون حاشیه و دور از قوانین سختگیرانه برای نسخه های غیر رایگان، می تواند این نوع از گیم سرور را به یک گزینه ایده آل برای راه اندازی بازی آنلاین تبدیل کند.

 

مدل Peer to Peer یا نظیر به نظیر

یکی دیگر از روش های راه اندازی گیم سرور ها به صورت Peer to Peer یا همان روش نظیر به نظیر معروف است که در آن سیستم ها به صورت مستقیم به یکدیگر متصل می شوند در این نوع از پیکر بندی در واقع سروری وجود ندارد و پردازش هر بخش از بازی روی همان سیستم انجام می گیرد که در حال بازی کردن است. این نوع از پیکربندی نیز یکی از روش های خوب به حساب می آید که می تواند در گیم نت ها مورد استفاده قرار گیرد. اما باید در نظر داشته باشید که هم نیاز به تجهیزات شبکه می باشد و هم موارد مدیریتی بسیار سختی در این زمینه وجود خواهد داشت. این موارد عبارتند از:

  1. هماهنگی و همزمانی بسیار سخت در بازی ها
  2. اضافه کردن سیستم جدید بسیار سخت خواهد بود
  3. یک نود باید به تمام نود ها و پلیر های دیگر وصل باشد
  4. هر نود این شبکه و این بازی باید برای یک حرکت از تمام نود ها اجازه دریافت کند و هماهنگی را اعمال کند.

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

 

پیکربندی Listen-Peer

اگر بخواهیم بگوییم که این نوع از پیکربندی گیم سرور چیست باید بگوییم که ترکیبی از هاست های گیم لیسن و معماری نظیر به نظیر را شاهد هستیم. در این معماری تمامی هماهنگ سازی ها توسط یکی از نودها و سیستم ها انجام می شود و سایر سیستم ها با اتصال به آن می توانند به بازی آنلاین متصل شوند. در مورد اینکه موارد لازم برا اتصال سیستم ها در این نوع از گیم سرور چیست باید گفت برای اتصال این سیستم ها یک بستر شبکه عادی هم کفایت می کند به عنوان مثال شما با یک شبکه ادهوک (Ad-Hoc) لپتاپ و یا حتی با استفاده از دستگاه مودم خانگی می توانید این گیم سرور را پیاده سازی کنید.

در این حالت یکی از سیستم ها به عنوان هاست تعیین شده و می توان گفت که این سیستم به نوعی پاشنه آشیل این پیکربندی خواهد بود. به این صورت که اگر ارتباط وی با شبکه قطع شود و یا به هر دلیلی سیستم دچار مشکلی شود، سایر سیستم ها نیز از بازی خارج خواهند شد. متاسفانه در این روش امکان Host Migration وجود ندارد و نمی توان گفت که راه فراری برای این موضوع وجود دارد.

گیم سرور LP

با توجه به این امکانات و تمامی مواردی که تا اینجای کار گفته شده است، یک سوال اساسی پیش می آید و آن این است که برای راه اندازی یک بازی آنلاین، گیم سرور بهتر عمل می کند یا نتورک کردن و شبکه کردن سیستم ها. در ادامه به بررسی کامل این که بهتر است از کدام مورد استفاده کنیم خواهیم پرداخت.

 

گیم سرور بهتر است یا استفاده از شبکه

خیلی از کسانی که از گیم سرور ها استفاده می کنند بر این عقیده هستند که استفاده از گیم سرور برای بازی های آنلاین و مولتی پلیر، خیلی بهتر از استفاده از سیستم های شبکه شده است. خصوصا با توجه به سرویس هایی مانند اینترنت گیمینگ که پینگ بسیار پایینی دارد. بعلاوه خیلی از قدیمی های گیم نت، و کسانی که سابقه فعالیت در این زمینه را دارند، همواره معتقدند که سرعت گیم سرور هر اندازه هم که بالا باشد در این بخش می خواهیم به طور کامل به بررسی این موضوع بپردازم که کدامیک از این پیکربندی های گیمینگ آنلاین و مولتی پلیر می تواند یک کیفیت بهتر را به ما ارائه کند و بهترین گزینه برای یک گیم نت کدام است.

معیارهای مختلفی وجود دارد که میتوان در مورد مقایسه این دو پیکربندی ارائه کرد که در ادامه به بررسی مهمترین آنها خواهیم پرداخت.

 

سرعت اتصال

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

اما نمی توان گفت که همیشه به همین صورت است. در صورتی که به صورت مستقیم از گیم سرور استفاده شود و شما هم یک گیم سرور با کیفیت داشته باشید می توانیم بگوییم که این قدرت پردازشی می تواند سرعت ایده آلی را برای خیلی از بازی های آنلاین به شما بدهد. پس می توانیم بگوییم اگر پای منابع سیستمی و بالا بودن قدرت پردازش در میان باشد می توان گفت که سرعت گیم سرور از نتورک بالاتر می رود. اما در مجموع برای این جنبه از مقایسه کارایی نتورک و گیم سرور می توانیم نتورک را برنده اعلام کنیم.

 

کیفیت

مورد دیگری که باید برای مقایسه گیم سرور و نتورک به آن توجه کرد کیفیتی است که در زمان بازی ارائه می کنند. گیم سرور ها به صورت کلی از می توانند کیفیت خوبی را برای بازی هایی که هاست آنها هستند و سایر سیستم ها به آن متصل شده اند ارائه کنند و می توان گفت که از نتورک هم بهتر هستند.

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

 

توانایی پاسخگوی به تعداد بالای کاربران

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

البته باید در نظر داشته باشید که سیستمی که به عنوان هاست بازی انتخاب می شود و سایر پلیر ها به آن متصل می شوند باید از کیفیت و منابع بالاتری برخوردار باشد.

به طور کلی می توانیم بگوییم که آسیب پذیری نتورک در برابر تعداد از گیم سرور پایین تر است و عملکرد بهتری از نتورک ها دیده می شود.

گیم سرور نظیر به نظیر

 

محدوده جغرافیایی

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

پس می توان میتوانیم در پاسخ به این سوال که مهمترین قابلیت هایی که گیم سرور دارد چیست بگوییم این نوع از سرور امکانات بازی را برای همه پلیر ها و در هر جایی فراهم می کند.

 

هزینه

در مورد هزینه باید دیدی که استراتژی شما به چه صورت می باشد. در صورتی که هزینه اولیه زیاد برای شما قابل توجیه باشد، نتورک می تواند مفید باشد و این امکان را خواهید داشت که با توجه به تعاریف و موارد گفته شده به کاربران خود سرویس دهی کنید، در غیر اینصورت باید به سراغ گیم سرور بروید و یک هزینه ثابت را به صورت ماهیانه برای آن پرداخت کنید. توجه داشته باشید که هزینه ای که برای زیر ساخت نتورک و نگهداری تجهیزات آن می کنید، تا حدودی برای شما باقی خواهد ماند، اما در گیم سرور شما باید تمام این مبلغ را به عنوان هزینه های خود در نظر بگیرید.

به طور کلی می توانیم بگوییم گیم سرور کاربرد های مخصوص به خود را داشته و نتورک هایی که در خیلی از گیم نت ها به شیوه سنتی استفاده می شود نیز کاربردهای خود را دارد و جایگزینی نتورک ها با گیم سرور ها موردی است که بسته به استراتژی های کاری یک مجموعه گیمینگ می تواند تعیین شود.

 

نتیجه گیری

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

دیتاسنتر چیست ؛ نامی آشنا در اینترنت

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

مطلب دیتاسنتر چیست ؛ نامی آشنا در اینترنت در تاریخ بیست و چهارم اردیبهشت ماه بازنویسی و به طور کامل بروزرسانی شد

دیتاسنتر چیست !؟

از اوایل دهه ۹۰ میلادی با به وجود آمدن مفهوم وب در اینترنت و پروتكل HTTP كه به سادگی امكان به اشتراك گذاشتن مستندات در اینترنت را برای کاربران فراهم می کرد، روز به روز بر تعداد كاربران اينترنت افزوده شد. همچنین با زیاد شدن كاربران، بالا رفتن حجم مستندات و سادگی انتشار اطلاعات در اینترنت، مفاهیم تجاری نیز وارد عرصه اینترنت شدند. در چنین شرایطی هر شرکت یا سازمانی تصمیم به راه اندازی سایت های اینترنتی و یا بصورت فراتر، پایگاه داده ای تحت وب گرفته که به کمک آن، اغلب خدمات خود به ارباب رجوعانشان را از طریق اینترنت و بدون نیاز به حضور آنها در محل شرکت یا سازمان مورد نظر، ارائه نمایند. از طرفی راه اندازی چنین سرویسی نیازمند تامین تجهیزات گران قیمت، استخدام نفرات متخصص و صرف هزینه بالا می باشد.

دیتا سنتر

راه حل این مشکل، راه اندازی مراكز خاصی تحت عنوان Data Center  یا مرکز داده می باشد. Data Center ها با در اختیار داشتن خطوط پرسرعت اینترنت ، سرورهای قوی و متعدد، تجهیزات پیشرفته تامین برق ، تهویه مطبوع و متخصصین مجرب، امكان راه اندازی سرورهای وب را برای عموم مردم ممكن ساخته اند. شرکت های تجاری ، سازمان ها و عموم مردم می توانند با اجاره كردن فضای محدودی در این دیتاسنتر ها، وب سایت های  خود را در معرض دید عموم قرار داده و با صرف حداقل هزینه بهترین سرویس ممکن را بدست آورند. برخی شرکت های بزرگ نیز با توجه به نیاز خود، اقدام به اجاره كردن یك سرور در دیتاسنتر می نمایند و از آن با استفاده از مکانیزم هایی برای کنترل از راه دور یا همان Remote Control کنترل کرده و به کار می گیرند. اكنون با توجه به رشد سریع اینترنت، روز به روز به تعداد Data Center ها اضافه می شود به طوری كه در حال حاضر در اكثر كشورهاي پیشرفته این مراكز وجود دارند.

اگر بخواهیم به صورت خلاصه بگوییم که دیتاسنتر چیست میتوانیم بگوییم ، Data Center به مجموعه‌ای از سرویس دهنده ها، زیرساخت‌ های ارتباطی ، امنیتی و تجهیزات الکترونیکی گفته می‌ شود که برای ارائه، نگهداری و پشتیبانی از سرویس‌ های تحت شبکه ( اینترنت، اینترانت، اکسترانت ) بکار گرفته می‌شوند.

Data Center، بسته به نوع کاربردی که برای آن تعریف شده است، می‌ تواند به عنوان یک مرکز پردازشی، مرکز ذخیره داده، مرکز جمع آوری داده و یا تمامی این موارد عمل کند. مراکز داده بسیار عظیم و متنوعی در سراسر شبکه جهانی اینترنت در حال سرویس دهی هستند که برخی از این مراکز استفاده تجاری محدود درون سازمانی دارند و برخی دیگر در اینترنت به صورت تجاری و یا عمومی قابل استفاده هستند. در ادامه به معرفی دیتاسنتر های طرح دنیا خواهیم پرداخت.

مطرح ترین دیتاسنترهای جهان

در بخش قبل در مورد اینکه دیتا سنتر چیست با هم صحبت کردیم. دیتا سنتر ها را می توان یکی از اصلی ترین و مهمترین زیرساخت های اینترنتی نام برد که در واقع بار اصلی اینترنت را به دوش می کشند و مسئولیت ذخیره سازی داده های ما را بر عهده دارند. به طور قطع می توان گفت وقتی شما داده ای را در فضای ابری ذخیره سازی می کنید و یا حتی فایل هایی که در ایمیل خود آپلود کرده اید، از فضای یک دیتا سنتر استفاده کرده اید. موارد زیر را می توان به عنوان مطرح ترین و بزرگترین دیتاسنتر های بین المللی نام برد:

مایکروسافت

Data Center شیکاگوی مایکروسافت یکی از بزرگترین Data Center های دنیا با ۶۵ هزار متر مربع، میزبان حدود یک میلیون سرور است که در واحدهای ۱۵۰۰ تایی دسته بندی شده اند.

گوگل

دیتاسنتر گوگل هیچگاه رسماً تعداد سرورهای خود را اعلام نکرده؛ ولی می گویند این شرکت صاحب بیش از ۹۰۰ هزار سرور است. حتی عجیب نیست اگر گوگل را با ۱۳ مرکز داده در سراسر دنیا مالک بزرگترین Data Center جهان بنامیم.

آمازون

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

دیتاسنتر Hetzner

هتزنر نیز یکی دیگر از دیتا سنتر های معروف اروپایی است که در زمینه کاری خود و ارائه خدمات سرور یک قطب بزرگ به حساب می آید. این دیتاسنتر آلمانی با توجه به موقعیت ویژه خود در بایرن آلمان، سهم بزرگی از ترافیک کشور های

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

مطرح ترین دیتاسنتر ها

ساختار اصلی دیتاسنتر چیست

دیتا سنتر ها دارای ساختار های مختلفی هستن که میتوان اجزای ثابتی را برای هر کدام از آنها در نظر گرفت. در صورتی که بخواهیم به صورت منسجم به این سوال که ساختار دیتا سنتر چیست پاسخ دهیم، میتوانیم این موارد را نام ببریم.

بنای دیتاسنتر

با توجه به این نکته که اکثر سرورهای وب از نوع Desktop هستند، ساختمان دیتاسنترها اکثرا با سقف های بلند ساخته می شوند که علاوه بر تهویه هوا، امکان قرار دادن سرورهای بیشتر را می دهند. همچنین در تمامی Data Centerها، مسیرهایی برای گذراندن کابل های شبکه  کابل های برق وجود دارد. علاوه بر این موارد، وجود سیستم تهویه قوی برای پایین نگه داشتن دمای سرورها ضروری می باشد. البته مشخصاتی همچون وجود سقف کاذب، کف کاذب و همچنین سیستم اطفاء حریق در برخی موارد توصیه شده است.

دستگاههای ذخیره سازی اطلاعات (Storage)

ذخیره سازی متصل به شبکه (Nas) دستگاهی است که به صورت اشتراکی در شبکه مورد استفاده قرار می گیرد.

وجود سیستم های پشتیبان گیری

با توجه به سیاست های Data Center و نیاز پروژه ، پشتیبان گیری از اطلاعات امری کاملا ضروری می باشد.

سیستم برق پشتیبان

یکی از مهم ترین مسائل در Data Center سرویس دهی بدون وقفه به مشتریان می باشد. با توجه به امکان قطع برق به دلایل مختلف همچون حوادث غیرمترقبه یا جنگ، نیاز به سیستم برق پشتیبان ضروری است. معمولاً  Data Centerهای بزرگ از UPS های مخصوصی استفاده می کنند که امکان سرویس دهی به بیش از صدها سرور را دارند. علاوه بر سیستم UPS ، ژنراتورهای قوی نیز درData Center وجود دارد تا در صورت قطع بلندمدت برق، سرویس دهی بدون وقفه انجام شود .

دسته بندی دیتاسنتر چیست

مراکز داده را با توجه به اندازه و کارکرد به دسته‌های زیر تقسیم می کنیم:

  1. شبکه‌های سازمانی، تجاری و یا دانشگاهی  (Campus)
  2. شبکه‌های خصوصی WAN
  3. فراهم کننده‌های سرویس (SP)
  4. مراکز داده اینترنتی  (IDC)
  5. مراکز داده فراسازمانی  (Extranet)
  6. مراکز داده محلی  ( Intranet)

واحد IT یکی از قسمت های بسیار مهم از هر سازمان و شرکت در سراسر جهان می باشد. توجه این واحد و ارتقاء آن یکی از نکات اصلی جهت تداوم کسب و کار می باشد. شرکت ها برای اجرای عملیات خود به  سیستم های اطلاعاتی متکی هستند . اگر یک سیستم در دسترس نباشد، ممکن است عملیات شرکت دچار اختلال و یا بطور کامل متوقف شود. ارائه یک زیرساخت قابل اعتماد به منظور به حداقل رساندن احتمال اختلال برای انجام عملیات IT  لازم است. از موارد مهم دیگر، امنیت اطلاعات می باشد. به همین دلیل Data  Center ها به عنوان یک محیط امن که احتمال نقض امنیت را به حداقل میرساند، مورد توجه قرار می گیرند.

دیتا سنتر و معضل مصرف انرژی

در ابتدای مقاله به این امر که وجود دیتاسنتر ها چقدر می تواند برای برقراری اینترنت و ارتباطاتی که امروز شالوده دنیای ما است، ضروری می باشد صحبت کردیم و اکنون که به اینجای متن رسیده ایم دیدیم که تقریبا مهمترین المان در ساختار اینترنت را این دیتاسنتر ها تشکیل داده اند. اما در مورد این مراکز داده موضوعی وجود دارد که باید به صورت جدی بررسی شود و شاید اگر این بررسی ها نتواند ما را قانع کند نیاز باشد تا برای آینده بشریت هم که شده، تغییری اساسی در ساختار اینترنت و این عضو بزرگ صورت گیرد.

مشکل از آنجا شروع شد که در بررسی ها و آمار هایی که در سال 2007 ارائه شد، تقریبا 2% از گازهای گلخانه ای تولید شده در جهان که از اثرات آنها در تغییر آب و هوای زمین آگاه هستیم، بر اثر فعالیت دیتاسنترها تولید شده بود. شاید این سوال پیش بیاید که در این مسان نقش دیتاسنتر چیست و این موضوعات چه ربطی به دیتاسنتر دارد. در ابتدای مقاله و وقتی به بررسی این موضوع که دیتاسنتر چیست می پرداختیم دیدیم که دیتاسنتر ها یک یا چند سالن بزرگ پر از سرور های قدرتمند دارند. بدیهی است که این سرور ها برای کارکردن به نیروی برق نیز احتیاج دارند و انرژی مورد نیاز آنها باید تامین شود تا بتوانند بی عیب و نقص کار کنند.

در بیشتر کشور های جهان اصلی ترین منبع تولید برق سوخت های فسیلی است و میتوان نتیجه گرفت که دیتاسنتر ها به صورت غیر مستقیم در بالا بردن مصرف این نوع از سوخت و در پی آن بالا رفتن تولید گاز های گلخانه ای و گرمایش زمین نقش داشته اند. بنابراین باید تلاش هایی صورت گیرد تا دیتا سنتر ها را به عنوان یکی از مهمترین مراکز اینترنتی و المان های در حال کار تا حدودی از این موضوع دور کرد. هنوز روشی که بتوان برای جایگزین شن به عنوان یک دیتاسنتر معرفی شود وجود ندارد، اما روش های مختلفی ایجاد شده اند تا بتوانند برق مصرفی دیتا سنتر ها را کاهش داده و یا آنها را از سوخت پاک تامین کنند. اصطلاحا به این دیتاسنتر ها دیتاسنتر های سبز یا Green Datacenter گفته می شود که رد ادامه بیشتر به آنها می پردازیم.

ساختار دیتاسنتر

 

Green Datacenter چیست

در مورد این که این از دیتا سنتر چیست باید بگوییم که قرار است این دیتاسنتر ها تمامی انرژی مورد نیاز خود را از طریق انرژی های تجدید پذیر بدست بیاورند. تعدادی از کشور های پیشرفته مانند، کانادا، نروژ، سوئیس، سوئد و فنلاند، پروژه های بزرگی را برای راه اندازی این دیتا سنتر ها آغاز گرده و تا حدودی نیز موفق بودند.  ازین رو اقدامات مختلفی است که در یک دیتاسنتر سبز میتواند انجام شود که عبارتند از:

  1. استفاده از نیروگاه های بادی و خورشیدی برای انرژی برق مورد نیاز دیتاسنتر ها
  2. استفاده از دستگاه هایی با مصرف پایین تر که اصطلاحا به این دیتاسنتر ها Low Voltage Datacenter گفته می شود.
  3. بالا بردن بازدهی و استفاده از دستگاه هایی با برچسب انرژی بالا که میتواند با کمترین مصرف برق بیشترین بازدهی را داشته باشد.
  4. استفاده از سیستم های خنک کننده با آب به جای کولر هایی که برای خنک کردن سرور ها انجام می شود.

البته موراد دیگری نیز وجود دارد که میتواند در یک دیتا سنتر سبز به کار گرفته شود. هر چند که این کشور ها نامی برای این نوع از دیتاسنتر های خود انتخاب کرده و مشغول به تحقیق در این زمینه شده اند اما می توان گفت که دو شرکت بزرگ پیشرو در این زمینه یعنی آمازون و مایکروسافت از آن ها خیلی جلو تر بوده اند. کلود آمازون جندی پیش اعلام کرد که بیشتر برق مصرفی خود را از منابع تجدید پذیر تهیه می کند و برای اینکه بتواند این درصد استفاده را به صد برساند یک پروژه تحقیقاتی بزرگ را در چین راه اندازی کرده است.

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

نتیجه گیری

در این مقاله در مورد اینکه دیتاسنتر چیست با هم صحبت کردیم و دیدیم که این عضو اصلی اینترنت و بستر زیرساخت چه ویژگی هایی دارد. دیتاسنتر را می توان یکی از مهمترین سرویس دهنده ها ارزیابی کرد ولی از نظر اقتصادی استفاده از سرویس های بالایی که این ارائه دهندگان به شما می دهند، به هیچ عنوان حتی برای کسب و کارهای بزرگ نیز به صرفه نمی باشد و معمولا هاستینگ ها و افراد فعال در حوزه آی تی که خود ارائه کننده خدماتی از این دست هستند به این سراغ این سرویس ها می روند. اگر شما نیاز به یک سرویس خوب و حرفه ای و البته با صرفه اقتصادی، از نوع سرور اختصاصی و یا سرور مجازی دارید که توسط این دیتاسنتر ها ارائه می شوند میتوانید از سرویس های مارال هاست استفاده نمایید.

آشنایی با وب سرور لایت اسپید

راه اندازی یک وبسایت یکی از اقداماتی است که می تواند کمی دردسر داشته باشد و گیج کننده باشد. مخصوصا در ابتدای راه که شما برای راه اندازی سایت خود اقدام به خرید دامنه و بعد از آن هاست می کنید. هاستینگ یکی از زمینه هایی است که تبلیغات خیلی رنگارنگی دارد و شما در موقع انتخاب هاست مورد نظر خود با گزینه ها و آپشن های مختلفی روبرو هستید. در این مقاله قصد داریم تا در مورد یکی از نام های آشنا با شما صحبت کنیم که می توانید آن را در خیلی از موراد ببینید. یکی از مهمترین این المان ها وب سرور است. وب سرور لایت اسپید نمونه ای از این ماژول ها است که در یک هاست وظیفه پاسخگویی به درخواست ها را بر عهده دارد و این ماژول است که کدهای سایت شما را تبدیل به یک برنامه پویا و جذاب می کند و هر آنچه که کاربران به آن نیاز داشته باشند را در اختیارشان می گذارد.

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

مطلب آشنایی با وب سرور لایت اسپید در تاریخ چهاردهم اردیبهشت ماه بازنویسی و به طور کامل بروزرسانی شد

 

وب سرور لایت اسپید چیست

وب سرور لایت اسپید که بصورت LSWS شناخته می‌شود و در واقع مخفف Litespeed Web Server است یک وب سرور اختصاصی (Proprietary) است که منظور از اختصاصی رایگان نبودن آن است. این وب سرور 5امین وب سرور محبوب جهان است و تا آپریل 2020 حدود 6.4% از وب سایت‌های جهان از این وب سرور استفاده می‌کردند. این مقاله جهت آشنایی با وب سرور لایت اسپید و تنظیمات لایت اسپید برای شما آماده شده است.

شرکت LiteSpeed واقع در New Jersey کشور امریکا و یکی از شرکت های پیشرو در خدمات وب سرور ها و امنیت سرور های میزبانی وب میباشد. این شرکت اوایل سال ۲۰۰۲ توسط یک تیم از مهندسان به رهبری George Wang تاسیس شد. این وب سرور از فرمت پیکربندی شبیه وب سرور آپاچی استفاده می‌کند و با بیشتر ویژگی‌های آپاچی منطبق است.

LSWS در سال 2003 منتشر شد و آگوست 2008 به 16امین وب سرور محبوب جهان تبدیل شد. در سال 2016 نیز جزو 4امین محبوب‌ترین وب سرور جهان شد و در سال 2017 نیز تیم پلی تکنیک دانشگاه هنگ کنگ اعلام کردند که این وب سرور جزو 6 وب سرور محبوب است. در آپریل 2020 نیز 69.3% از وب سایت هایی که از QUIC (Quick UDP Internet Connections) استفاده میکردند روی این وب سرور بودند.

QUIC یک پروتکل همه منظوره‌ی لایه‌ی transport شبکه است که توسط Jim Roskind در گوگل طراحی شد.

litespeed web server

طبق داکیومنت موجود در سایت وب سرور لایت اسپید، بصورت کلی لایت اسپید از آپاچی سریع‌تر است اما این  موضوع مقدار زیادی بستگی به تنظیمات لایت اسپید دارد. اگر تمایل به انجام تنظیمات خاصی ندارید در حالت پیش فرض لایت اسپید عملکردی بسیار بهتری از آپاچی دارد. لایت اسپید به خوبی با Cpanel ادغام می‌شود، EasyApache را تحت تاثیر قرار نمیدهد و EasyApache بدون هیچ مشکلی می‌تواند فایل httpd.conf را بخواند. لایت اسپید بهترین انتخاب برای هاستینگ اشتراکی میباشد زیرا هم از سرعت بسیار بالا و هم از امنیت خوبی برخوردار است.

اکنون که پیش زمینه‌ای از لایت اسپید بدست آوردید برای آشنایی با وب سرور لایت اسپید و تنظیمات وب سرور لایت اسپید در ادامه با ما همراه باشید.

 

تنظیمات LSWS

اولین گام بعد از نصب جهت تنظیمات لایت اسپید پیکربندی PHP suEXEC است. suEXEC یک متد اجرایی آپاچی برای اجرای برنامه های CGI و SSI است که هر پروسه PHP را با دسترسسس owner اکانت خاص اجرا می‌کند.

اجرای هر پروسه PHP با owner اکانت نسبت به اجرا با یوزر وب سرور باعث امن‌تر پروسس ها می‌شود زیرا اگر یک یوزر روی سرور در معرض خطر قرار بگیرد چون اسکریپت‌های PHP  از اکانت‌های خودشان اجرا می‌شوند و فایل‌های آن‌ها توسط یوزرهای دیگر مانند یوزر مشکوک و در معرض خطر قابل دسترسی نیست.

با نصب لایت اسپید بصورت پیش فرض PHP SuEXEC نصب و فعال میشود. بصورت کلی PHP SuEXEC در حالت user:user اجرا می‌شود در حالی که non-PHP SuEXEC بصورت nobody:nobody اجرا می‌شود بنابراین یکبار PHP SuEXEC را فعال و کانفیگ نمائید و بعد از آن تغییری ایجاد نکنید زیرا موجب مشکلات permission  می‌شود.

در whm  به مسیر زیر بروید:

 Plugins -> LiteSpeed Web Server Plugin  -> LiteSpeed Configuration -> PHP suEXEC Quick Configuration

مطابق تصاویر زیر عمل نمائید:

getting familiar with LiteSpeed

what is litespeed

Introduction to Light Speed

اگر چندین وب سایت و چندین اکانت سی پنل دارید برای افزایش امنیت بهتر است که PHP suEXEC فعال شود.

همچنین میتوانید PHP suEXEC Max Conn که ماکسیمم تعداد درخواست‌های همزمان PHP که یک یوزر در یک بازه زمانی می‌تواند اجرا کند را محدود ‌کنید. این مقدار شبیه FCGI MaxProcesses,  یا  PHP-FPM’s Max Worker’s per pool است. پیشنهاد می‌شود در ابتدا با مقادیر بالا آغاز نکنید.

LiteSpeed PHP suEXEC

 

افزایش سرعت لود وب سایت

بصورت کلی برای افزایش سرعت لود وب سایت روی وب سرور لایت اسپید موارد زیر را در نظر بگیرید.

  1. از یکی ازپلاگین‌های کَش لایت اسپید استفاده کنید.
  2. از  php ورژن x.7 استفاده کنید زیرا سرعتش نسبت به ورژن 5 دو برابر است.
  3. افزونه‌ی  PHP opcode cache را نصب و فعال نمائید.
  4. اگر به ماژول‌های  PHP xdebug و  PHP snmp نیاز ندارید آن‌ها را غیرفعال کنید
  5. در طول تایم‌های peak در مسیر زیر  آمار واقعی تعداد پردازش‌های PHP را مرتباً بررسی نمائید:

LSWS Web Admin → Actions → Real-Time Stats→External Application

بخش Statistics وب سرور لایت اسپید

مقادیر WaitQ و Idle و InUse را بررسی نمائید. اگر WaitQ مرتباً بیشتر از صفر است به این مفهوم است که درخواست‌های زیادی در صف پردازش هستند، تنظیمات PHP max concurrency  را افزایش دهید.

عوامل مختلفی تعیین کننده PHP Max Connection هستند و به فعال بودن یا نبودن PHP SuEXEC بستگی دارد. اگر PHP SuEXEC استفاده می‌شود PHP suEXEC Max Conn مقدار PHP Max Concurrency را کنترل مینماید و مقدار پیش فرض 5 است و اگر استفاده نشود External Application LSAPI Max Connections  این مقدار را کنترل می‌کند.

 

ورود به ادمین لایت اسپید

برای ورود به پنل ادمین وب سرور لایت اسپید به دو طریق می‌توانید لاگین کنید:

1- لاگین از طریق افزونه LiteSpeed Web Server در WHM که از طریق مسیر زیر قابل دسترس است:

Plugins -> LiteSpeed Web Server Plugin  -> LiteSpeed Configuration-> Web Admin Console

LiteSpeed Configuration در وب سرور لایت اسپید

LiteSpeed Admin Console

بعد از کلیک روی Web Admin Console پنجره‌ای باز می‌شود که از شما یوزرنیم و پسورد می‌خواهد. این یوزرنیم در انتهای نصب وب سرور لایت اسپید به شما داده می‌شود. یوزر معمولاً Admin است. در صورتی که پسورد را فراموش کرده‌اید در پنجره زیر روی How to reset WebAdmin Console password کلیک نمائید، پنجره‌ای باز می‌شود که نحوه تغییر پسورد را به شما آموزش می‌دهد.

Litespeed reset admin password

2- لاگین از طریق لینک ورود به ادمین، در این روش با استفاده از آی‌پی سرور و پورت دایرکت ادمین می‌توانید وارد صفحه‌ی لاگین شوید. پورت وب سرور لایت اسپید معمولاً 7080 است:

LiteSpeed Admin Login در وب سرور لایت اسپید

 

بعد از ورود به پنل مدیریت وب سرور لایت اسپید در اولین صفحه بخشی بنام General وجود دارد که مربوط به تنظیمات و وضعیت کلی وب سرور و سرور مانند آپدیت، چک کردن وضعیت سرور، بررسی لاگ‌ها و ری استارت سرور و … است.

بخش بعدی Configuration است که یک واسط گرافیکی برای انجام تمامی تغییرات و پیکربندی اصلی وب سرور می‌باشد.

سومین بخش Web Admin Console است که تنظیمات واسط گرافیکی ادمین وب سرور یعنی همین تصویری که در زیر مشاهده می‌کنید را نشان می‌دهد و می‌توانید آنها را تغییر دهید.

Litespeed Configuration

 

نتیجه گیری

به طور کلی می توان وب سرور لایت اسپید را یک گزینه ایده آل و قدرتمند برای وب سایت هایی که میزان درخواست ها در آنها زیاد است معرفی نمود. به عنوان نمونه لایت اسپید می تواند در هاست وردپرس یک امتیاز ویژه باشد که تضمین کننده بهینه بودن بررسی درخواست ها در این هاست می باشد. برای آشنایی با تنظیمات مربوط به Tuning وب سرور لایت اسپید می توانید به مقاله تیونینگ لایت اسپید مراجعه کنید. همینطور اگر به یک آموزش کامل در مورد تنظیمات عمومی این وب سرور احتیاج دارید، مقاله تنظیمات عمومی لایت اسپید می تواند کمک خوبی برای شما باشد.

سرور چیست ؛ توضیح کامل به زبان ساده

از هر زاویه ای که به دنیای امروز نگاه کنیم می توانیم این موضوع را ببینیم که با یک دنیای به هم پیوسته و متصل طرفیم و به جرات میتوان گفت که این ارتباطات را مدیون اینترنت و شبکه ها هستیم. یک جمله کوتاه در آنسوی دنیا می تواند روی اقتصاد این طرف دنیا ظرف کمتر از یک ساعت تاثیر داشته باشد و مسئولیت تمام این ها بر عهده اینترنت و شبکه های ارتباطی است. المان های مختلفی وجود دارد که در این میان همکاری می کنند تا بشر چنین قدرتی را داشته باشد. یکی از نام های آشنا در این صنعت، سرور است که بار عظیمی را نیز به دوش می کشد و در این مقاله قرار است که به صورت کامل به بررسی این موضوع که سرور چیست و چه کارهایی را انجام میدهد بپردازیم.

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

 

شبکه های کامپیوتری و سرور

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

پس در اصل وقتی می گوییم شبکه منظور ما سیستم هایی است که قرار است برای هدف مشترکی با یکدیگر کار کنند. برای اینکه این ارتباط در بین عناصر شبکه که اصطلاحا به آنها نود های شبکه(Nodes) گفته می شود برقرار باشد، معماری های مختلفی وجود دارد که باید از آنها استفاده شود. در ساده ترین نوع این معماری هر سیستم که روی شبکه وجود داشت با سایر سیستم های دیگر ارتباط داشت.در این حالت یک شبکه نظیر به نظیر یا p2p داشتیم که به خاطر شلوغ شدن ارتباطات، نمی شد از تعداد زیادی کامپیوتر در این شبکه ها استفاده کرد. راه حلی که برای این مشکل پیشنهاد شد یک معماری جدید به نام Client-Server بود. می توان گفت در این نقطه بود که سرور ها به وجود آمدند و معنی چیزی که سرور می تواند داشته باشد ایجاد شد.

معماری سرور چیست

در معماری Client-Server یک سیستم به عنوان سرور در شبکه معرفی می شد و تمامی سیستم های دیگر شبکه برای آنکه به شبکه متصل باشند و بتوانند از سرویس های شبکه استفاده کنند همگی به یک سرور متصل می شدند، و سرور نیز امکان ارتباط بین سیستم ها را فراهم می کرد و همزمان مدیریت آنچه که سایر نودها می توانستند از طریق شبکه به آن دسترسی داشته باشند نیز انجام می داد. در واقع اگر بخواهیم بگوییم در اینجا نقش سرور چیست باید بگوییم که سرور رئیس این نوع از شبکه ها بود. معماری کلاینت سرور تقریبا یک معماری بدون نقص بود که می توانست به شبکه های بزرگتر تعمیم پیدا کند، اما این بزرگ شدن باعث ایجاد مشکلات خاص خود می شد.

وقتی این شبکه ها بزرگتر می شدند به سرور های قدرتمند تر نیاز می شد. سرور قدرتمند تر به معنای سرور گرانتر نیز بود و این امر باعث شد که استفاده از سرور ها با تغییراتی مواجه شود و استفاده از آنها نیز به طور کلی تغییر کند، المان های دیگری مانند سوئیچ ها و روتر ها به شبکه های بزرگ راه پیدا کردند و سرور ها نیز از پوسته یک کامپیوتر ساده خارج شدند و به چیزی بسیار بزرگتر تبدیل شدند. 

برای اینکه ببینیم این لول بعدی از سرور چیست لازم است که به سرور هایی که اکنون در حال کشیدن بار محاسباتی اینترنت و برقرار کردن آن برای ما هستند بپردازیم.

 

سرور های اینترنتی

اینترنت معماری خاصی خود را دارد و تقریبا می توان گفت که از همان معماری کلاینت و سرور شبکه ها استفاده می کند. با این تفاوت که نودهای شبکه در اینجا فرق کرده اند و سرور ها نیز بزرگتر شده و  طبقه بندی های مربوط به خود را دارند. به طور ساده می توان گفت وقتی که شما می خواهید به یک سایت اینترنتی دسترسی پیدا کنید، یک درخواست از سیستم شما خارج شده و به سمت سرور های اصلی که وظیفه سرویس دهی به شما را دارند فرستاده می شود.

این درخواست به صورت یک بسته اطلاعاتی کوچک که حاوی اطلاعاتی در مورد اینکه چه کسی می خواهد به چه چیزی دسترسی پیدا کند، فرستنده این بسته کیست و همینطور به چه جایی می خواهد برود، راهی یک سفر طولانی در بستر پر پیچ و خم اینترنت می شود. این بسته و سایر بسته هایی که در این مسیر با آنها همسفر خواهد بود پکت نام دارند. پکت ها بر اساس یک پروتکل یا قانون به نام TCP/IP به سمت مقصد خود حرکت می کنند و هر کدام از آنها با توجه به یک کد چند بخشی به نام IP که تعیین می کند به کجا می خواهند بروند به وسیله سوئیچ ها و روتر ها به سمت مقصد خود که سرور های مربوط به سایت مورد نظر ماست راهی می شوند.

سرور اینترنتی چیست

البته این امکان وجود دارد که به دلایل مختلفی مانند عدم تمام شدن ماموریت بسته در زمان مقرر که اصطلاحا به این زمان Timeout گفته می شود و یا عدم اجازه برای رسیدن به سرور مربوطه مانند فیلتر بودن، قطعی ارتباط و یا هر دلیل دیگری این بسته ها قربانی شده و از بین خواهند رفت. اما وقتی بسته به سرور های مورد نظر برسد در اینجاست که عملیات سرویس دهی آغاز خواهد شد.

سرور بزرگتر بسته را به وب سرور مورد نظر تحویل خواهد داد و این وب سرور با توجه آنچه که درخواست ما نوشته شده است بسته های حاوی اطلاعات مورد نیاز ما را روی بستر شبکه راهی خواهد کرد. بسته به آنچه که می خواهیم بدست آوریم می تواند از چند ده بسته تا چندین هزار بسته برای ما در اینترنت جاری شود. این بسته ها وقتی به ما برسند، به صورت یکجا درآمده و صفحه ای از سایت را که خواسته این و یا فایل مورد نظری که می خواستیم آن را دانلود کنیم را به ما می دهند.

 

اجزای سرور چیست

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

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

اجزای سرور چیست

سرور ها در اینترنت اصلی ترین جزء به حساب می آیند که هم می توانند کار ذخیره سازی و مدیریت اطلاعات مربوطه را انجام دهند و هم خیلی از پردازش ها را، اما عنصر دیگری نیز وجود دارد که معمولا با سرور ها اشتباه گرفته می شود و آن وب سرور است. در ادامه به بررسی این موضوع که تفاوت وب سرور و سرور چیست خواهیم پرداخت.

 

تفاوت وب سرور و سرور چیست

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

عملکرد وب سرور به این صورت می باشد که شما کدهای سایت خود را در اختیار این برنامه قرار می دهید و این برنامه بر اساس درخواست هایی که شده است محتوای مورد نظر در این کدها را به صورت صفحات HTML و همینطور فایل های مورد نیاز برای نمایش آنها در اختیار درخواست کننده قرار خواهد داد. اما اگر بخواهیم بگوییم که سرور چیست باید بگوییم سرور در یک رده بالاتر از این قرار گرفته است و در واقع تمامی این پردازش ها و اتفاقات روی سرور ها اتفاق می افتد.

تفاوت وب سرور و سرور چیست

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

برای اطلاعات بیشتر در مورد وب سرور ها می توانید به مقالات، انجین ایکس چیست ، وب سرور لایت اسپید و مقایسه انجین ایکس و لایت اسپید مراجعه کنید.

 

سرویس های سرور چیست

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

اگر بخواهیم بگوییم که روش استفاده از سرور چیست باید گفت که سرویس های مختلفی به صورت مجازی سازی شده از روی این سرور ها ارائه می شود. با استفاده از این مجازی سازی ها یک سرور می تواند تبدیل به چندین سیستم و کامپیوتر کوچکتر شود و از هر کدام از این سیستم ها نیز چندین سیستم ریز و درشت دیگر متمایز خواهد شد که در مجموع یک سرور می تواند منابع مورد نیاز برای سرپا نگه داشتن هزاران سایت را فراهم سازد.

تفاوت سرویس های سرور چیست

به طور عمده می توان این سرویس ها را به صورت سه دسته کلی معرفی نمود:

 

سرور اختصاصی

در پاسخ به این سوال که این نوع از سرور چیست باید بگوییم که بخشی از منابع هر سرور که به صورت خالص با استفاده از مجازی سازی جدا شده و کاملا خام در اختیار شما قرار می گیرد. با استفاده از این نوع از خدمات شما یک کامپیوتر را خریداری می کنید، که به عنوان مثال میتواند برای شما 128 گیگابایت رم، 32 هسته پردازشی و 2 ترابایت فضای ذخیره سازی داشته باشد، شما می توانید این کامپیوتر را به هر روشی که می خواهید مدیریت کنید. می توانید روی آن یک سیستم عامل نصب کنید و یا اینکه آن را با استفاده از برنامه هایی مثل VMware به چند سیستم کوچکتر تقسیم کنید و هر کدام از این سیستم ها را در اختیار کسی بگذارید.

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

 

سرور مجازی یا VPS

در یک رده پایین تر از سرور اختصاصی، سرور مجازی قرار دارد. در مورد اینکه این سرویس از سرور چیست باید گفت که با استفاده از این سیستم، شما یک سیستم عامل را با منابع محدود تحویل خواهید گرفت که می توانید بنا بر نیاز خود از آن استفاده نمایید. در واقع نام دقیق این سرویس، Virtual Private Server یا سرور مجازی شخصی است که بیشتر به عنوان سرور مجازی شناخته می شود و به نحوی طراحی شده است که با استفاده از آن شما یک سیستم کامپیوتر را برای کار درون اینترنت داشته باشید. در این سرویس شما قادر خواهید بود که از مزایای یک کامپیوتر کامل بهره ببرید.

این سرویس با استفاده از یک ریموت می تواند برای شما قابل دسترسی باشد، و شما با وارد کردن یک IP و همینطور یوزرنیم و پسورد خود می توانید دسکتاپ سیستم مورد نظر شما و یا ترمینالی که با آن دسترسی به سیستم عامل دارید را مشاهده کنید. این نوع از سرویس ها نیز می تواند برای راه اندازی سایت مورد استفاده قرار گیرد و با توجه به تضمینی بودن منابعی که دارد می تواند یک گزینه بسیار خوب باشد که سایت شما روی آن با هیچ مشکلی مواجه نخواهد بود.

اگر این سوال برای شما پیش آمده است که کاربرد دقیق این سیستم عامل و این نوع سرور چیست می توانیم به موادی مانند سرور مجازی بایننس اشاره کنیم که کاربرد های آن به طور کامل در مقاله کاربرد سرور مجازی بایننس عنوان شده است.

سرور مجازی

 

سرور های ابری

یکی دیگر از سرور هایی که می توانیم آن را هم جزو این سرویس ها دسته بندی کنیم، سرور های ابری است. در یک سرور ابری شما تقریبا یک سرور اختصاصی را خواهید داشت با این تفاوت که منابعی که در اختیار شما قرار می گیرد کمی محدود تر شده است. به این علت که سرویس های ابری از رایانش ابری استفاده می کنند و از کیفیت بالاتری برخوردار بوده و به دنبال آن هزینه آنها نیز به مراتب افزایش خواهد داشت.

اگر به طور واضح تر بخواهیم بگوییم که این سرویس سرور چیست باید به سراغ سرویس های ابری برویم. در سرویس های ابری یک سیاست وجود دارد که سرور ها به صورت یکجا و متمرکز پیکر بندی نمی شوند و شما یک سرور را در اختیار دارید که رسانه های ذخیره سازی آن در چند دیتاسنتر پخش شده اند. در این سرویس ها وقتی یک کاربر بخواهد به داده ای از سرور دسترسی داشته باشد، به صورت خودکار به نزدیکترین دیتا سنتر و سروری که می تواند این خدمت را به وب ارائه کند متصل خواهد شد. کنترل میزان بار وارد شده روی سرور یا همان لود بالانس نیز یکی دیگر از ویژگی های این سرور ها شده است.

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

در مورد این سوال که سرویس های سرور چیست می توان به این سه مورد اشاره کرد، هر چند که سرور ابری کمی از دو مورد قبلی فاصله دارد و بیشتر به سمت رایانش ابری یا همان Cloud Computing گرایش دارد. اگر کمی دقت داشته باشید تا اینجای کار معمولا راه اندازی یک وب سایت و در نهایت یک کسب و کار اینترنتی را به عنوان پاسخ اجمالی به سوال کاربرد سرور چیست ارائه کرده ایم که تنها بخشی از کاربرد های سرور است. اکنون نوبت به این موضوع رسیده است که ببینیم واقعا کاربرد های سرور چیست و سرور ها به ما چه چیزی را می توانند بدهند.

 

کاربرد های سرور چیست

بدیهی است با رشدی که امروزه اینترنت از خود نشان داده است و بازاری را که سرویس های اینترنتی برای خود راه اندازی کرده اند، از بازی های آنلاین گرفته تا شبکه های اجتماعی، همه و همه در بستر اینترنت بوده و برای پردازش و همینطور سرویس دهی وابسته به سرور ها هستند. پس به جرات می توان گفت که در مورد اینکه سرور ها چه کار می کنند و کارایی آنها چیست، یک طومار بلند وجود دارد که خیلی از کاربرد های اینترنت درون آن جای می گیرند. در این قسمت ما می خواهیم به تعدادی از مهمترین این موراد اشاره کنیم و ببینیم که پرکاربردترین دسته ها و موارد کاربرد های سرور چیست

کاربرد سرور چیست

این کاربرد ها از این قرار هستند:

 

میزبانی وب سایت ها

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

فقط سایت های فروشگاهی نیستند که در این میان قرار دارند، شما می توانید LMS ها یا سیستم های مدیریت آموزشی دانشگاه ها و مدارس، سیستم های اطلاع رسانی جمعی، سایت های دولتی و همینطور بانک ها را نیز به این فهرست اضافه کنید. پس به طور کلی باید در نظر داشته باشید اگر بخواهیم بگوییم که کار اصلی سرور چیست دقیقا باید گفت که ستون های اصلی اینترنت را برای سایت ها و وب تشکیل داده اند.

 

سرور های نام دامنه

سیستم نام دامنه یا DNS یکی از مهمترین موارد در وب است که از طریق آن شما قادر خواهید بود تا یک سایت را بر اساس نام و دامنه آن جست و جو کرده و به آن دسترسی پیدا کنید. برای درک بهتر اینکه این نوع از سرور چیست باید کمی بیشتر در مورد کارکرد دامنه های سایت ها توضیح دهیم. در اینترنت هر استفاده کننده هر سایت با یک کد شناسایی می شوند که این کد در واقع همان آدرس سرور سایت و همینطور کاربری که از آن استفاده می کند نیز می باشد.

وقتی درخواستی از یک کاربر به یک سایت فرستاده می شود، باید IP سایت مورد نظر در این درخواست درج شود تا به مقصد صحیح خود برسد. در مورد محتوایی که برگشت داده می شود و پاسخ این درخواست ها نیز همین مشکل وجود دارد و باید این بازگشت با IP کاربر همراه باشد. سرور های DNS مسئول این هستند که دامنه هایی که ما می شناسیم را با استفاده از اطلاعاتی که در مورد این دامنه ها دارند به IP های مورد نظر نگاشت کنند.

به این صورت که وقتی شما آدرس یک سایت را در مرورگر خود وارد می کنید، ابتدا فایل هایی از این DNS ها که در کامپیوتر شما کش شده اند، مورد بازبینی قرار می گیرند، در صورتی که IP اعلام شده در این فایل ها قدیمی باشند، و یا اینکه سایت مورد نظر در آنها وجود نداشته باشد، درخواست برای IP این سایت به DNS سرور های ISP ارسال می شود. اگر ارائه دهنده خدمات اینترنتی شما نیز نتواند بگوید که IP چیست، به DNS سرورهای بین المللی ارجاع داده می شود. این سلسله مراتب از سرور ها یکی از مهمترین ساختار هایی است که در اینترنت وجود دارد و سبب شده است تا اینترنت یک تجربه کاربری خوب را به شما ارائه دهد.

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

 

سرورهای پردازشی

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

سرور پردازشی

خیلی از بزرگترین شرکت های دنیا که به منابع پردازشی بسیار بسیار قوی نیاز دارند، از سرویس هایی که دیتاسنتر ها به عنوان خدمات پردازشی ارائه می کنند استفاده می کنند. به عنوان مثال محاسبات طولانی و پیچیده فضایی که توسط ناسا انجام می گیرد معمولا بر سرویس های پردازشی سرور های آمازون انجام می گیرد.

خیلی از دانشگاه ها نیز برای موارد خاص از این سرویس ها استفاده می کنند. پردازش از طریق سرور ها بخاطر اینکه پردازنده های لوکال مشغول نمی شود و همینطور در صورت نیاز به راحتی می توان منابع سرور را افزایش داد، می تواند یک گزینه بسیار ایده آل برای این کار ها باشد.

سرور های VDI

یکی دیگر از پاسخ هایی که برای سوال مزایای سرور چیست می توانیم به آن اشاره کنیم، استفاده از این سرور ها برای مجازی سازی دسکتاپ است. در این سرویس شما با استفاده از یک سرور قدرتمند که می تواند یک سرور لوکال باشد این امکان را خواهید داشت که به صورت مجازی سازی شده به تمامی کارمندان خود یک سیستم دسکتاپ بدهید که کارهای روزمره خود را با آن انجام دهند، این دسکتاپ ها یک سیستم تمام عیار را با استفاده از منابعی که سرور شما دارد در اختیار شما می گذارند که می تواند بسیار کاربردی باشند.

چیزی که در رابطه با این دسکتاپ ها لازم است به آن توجه ویژه داشته باشید این است که شما از یک سرور استفاده می کنید، پس می توانید در سریعترین زمان ممکن یک داده را Share کرده و از اطلاعات روی هارد استفاده کنید، همینطور امکانات مدیریتی سطح بالایی وجود دارد که می تواند امکان کنترل، مشاهده و همینطور رهگیری تمام اقداماتی که در یک مجموعه انجام می شود، توسط مدیر و تیم مدیریت انجام گیرد.

یکی از بهترین مزایای این سیستم نیز این است که با استفاده از آن هزینه هایی که برای ارتقا و نگهداری سیستم ها نیاز دارید کاهش می یابد و شما با ساده ترین سیستم های موجود می توانید کار خود را راه بیاندازید. سیستم های پایینی نیز وجود دارند که به آنها Thin Client گفته می شود و برای این نوع از سیستم مورد استفاده قرار می گیرد. اگر بخواهیم بگوییم که بهترین گزینه برای این نوع از سرور چیست باید به سرور های لوکال اشاره کنیم. شما می توانید با یک بار هزینه و البته هزینه های نگهداری که خیلی هم نیستند یک سرویس ایده آل و خوب برای خود داشته باشید.

 

دانلود سرورها

دانلود سرور چیست و چه استفاده ای برای ما دارد؟ به طور کلی می توان گفت وقتی که یک برنامه، یک آهنگ و یا یک فیلم را دانلود می کنید، شما از خدمات مربوط به یک دانلود سنتر استفاده کرده اید. دانلود سرور ها می توانند جزو بهترین کارایی سرور ها باشند زیرا می توانند نیاز های مختلفی را برای ما رفع کنند. این بخش از سرور ها روی رسانه هایی ذخیره سازی می شوند که معمولا قیمتی ارزانتر و حجم های بالا دارند.

اگر بخواهیم بگوییم که برای این مورد بهترین سرویس سرور چیست می توانیم به سرور هایی با هارد های HDD اشاره کرد. در مورد اینکه این هارد ها چه هستند و تاثیر کارکرد آنها روی سرور چیست صحبت خواهیم کرد اما به طور کلی می توانیم بگوییم یک فضای ارزان و با کیفیت و حجم بالا را به ما می دهند که می توان روی آن مقادیر زیادی از بازی و نرم افزار را ذخیره سازی کرد.

 

سرور های ایمیل

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

یک میل سرور این امکان را به شما می دهد تا با استفاده از خدمات ویژه برای ارسال ایمیل ها پروتکل های مورد نظر خود را تکمیل کرده و کلیه ارسال های خود را مدیریت کنید. همینطور شما می توانید بدون راه اندازی یک سایت و صرفا با استفاده از یک دامنه نسبت به راه اندازی این سرور ها اقدام نمایید و از خدمات آنها استفاده کنید.

 

گیم سرورها

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

این روزها بازی های آنلاین بخش خیلی بزرگی از صنعت عظیم سرگرمی و انترتینمنت را به خود اختصاص داده اند و می توان گفت که با قدرت هرچه تمام تر در حال تاخت و تاز هستند و خیلی از شرکت ها هستند که سرمایه گذاری های هنگفتی در این موضوع می کنند. در اینجا ممکن است این سوال برای شما پیش آمده باشد که نقش سرور چیست و اینکه سرور ها چه کاری را باید انجام دهند که این حرف ها را می زنیم!؟

گیم سرور چیست

در این رابطه باید گفت که هر شرکتی که سرور های آن توانایی بالاتری داشته باشد و چه از نظر پردازش و چه از نظر سرعت بهترین باشد، می تواند از بقیه پیشی گرفته و ابتکار عمل را در این صنعت عظیم در دستان یک شرکت و یا بازی خاص قرار دهد. شاید یک بازی ساده به نظر مهم نرسد اما همین بازی های کوچک می توانند آینده صنعت عظیم سرگرمی را به طور کلی تغییر دهند.

در این بخش به طور کامل دیدیم که کاربرد سرور ها چیست و یک سرور چه کاری را می تواند انجام دهد. اکنون نوبت به این موضوع رسیده است که به این بپردازیم که چه عواملی باعث می شود که کارایی سرور ها از نظر کیفی تغییر کند یا به عبارتی ببینیم که عوامل تاثیر گذار روی کارایی سرور چیست

 

عوامل موثر در کارایی سرور چیست

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

 

لوکیشن و محلی که سرور در آن قرار دارد

اگر بخواهیم بگوییم که لوکیشن سرور چیست باید گفت که دیتاسنتر ها محل اصلی قرار گیری سرور ها هستند، اما اینکه دیتاسنتر در کجا قرار گرفته است می تواند یکی از تعیین کننده ترین موارد در کارایی سرور باشد. هر چه شما به یک سرور موقعیت جغرافیایی دورتری را داشته باشید، باید انتظارات خود را از آن سرور کمتر کنید، زیرا تاخیر بالاتری در این انتشار متوجه شما خواهد بود.

در مورد اینکه این سرور ها چه مکان هایی می توانند باشند و در این زمینه دسته بندی سرور چیست می توانیم به دو دسته اصلی سرور های ایرانی و سرور های خارجی اشاره کنیم. در سرور هایی که در دیتاسنتر های خارجی مانند OVH و Hetzner قرار دارند، شما قطعیت بیشتری را خواهید داشت و برای راه اندازی یک سایت بین المللی از هر جهت مناسب تر خواهند بود.

اما مورد دیگری هم که باید در این زمینه در نظر بگیرید این است که خیلی از سرویس ها بهتر است روی دیتاسنتر ها و سرورهای داخلی ارائه شوند. به عنوان مثال سرویس های بانکداری و سرویس های مربوط به بازی های آنلاین داخلی در سرور هایی که از دیتا سنتر های داخلی استفاده می کنند کارایی بهتری را ارائه خواهند کرد.

 

سخت افزار مورد استفاده

یکی دیگر از مواردی که می توان گفت روی کارایی سرور ها نقش مهمی دارند سخت افزاری است که روی این سرور ها از آن استفاده شده است. خصوصا در مورد پردازنده ها و رسانه های ذخیره سازی شما نیاز دارید تا از یک سیستم سطح بالا برای سرور استفاده کنید.

بهترین سرور ها آنهایی هستند که از رسانه های ذخیره سازی جانبی با معماری NVMe استفاده می کنند. همینطور نسل و تعداد هسته های پردازشی و همینطور تعداد پردازنده هایی که روی یک سرور مشغول به کار هستند نیز از نکاتی است که باید به آنها توجه داشته باشید. در رده پایین تر این سیستم ها هارد های Raid قرار دارند و بعد از آنها نیز SSD ها قرار دارند. معمولا برای کاربرد های راه اندازی وب سایت دیگر از SSD به پایین تر جوابگو نیست.

اما همانطور که قبلا هم اشاره کردیم در رسانه های ذخیره سازی که به عنوان دانلود سرور ها  یا برای ذخیره سازی بکاپ ها مورد استفاده قرار می گیرند هنوز می توان از HDD های با کیفیت استفاده کرد. اما در کل هر چه سخت افزار بهتر و جدیدتر باشد، سرعت سرور بیشتر بوده و سرور با سریع، یک سرور با کیفیت است.

 

معماری پیاده سازی

یکی دیگر از مواردی که باید در مورد سرور ها بررسی کنیم این است که معماری سرور ها به چه صورتی می باشد. در مورد اینکه معماری پیاده سازی سرور چیست باید بگوییم که سرور ها به دو صورت ابری و یا متمرکز پیکر بندی می شوند. در پیکربندی های ابری یک سرور به صورت توزیع شده در بین چند دیتاسنتر فعالیت دارد و اگر یکی از این سرورها از کار بیافتد یا به علت درخواست های بالا نتواند پاسخ مناسبی به سایر درخواست ها بدهد. دیتاسنتر های دیگر و سرور های دیگر می توانند وظیفه آن را تا زمان رفع این بار اضافی بر عهده بگیرند.

همینطور در مورد دور یا نزدیک بودن راه نیز همیشه سروری که در کوتاهترین فاصله قرار داشته باشد کار سرویس دهی  را انجام خواهد داد و از این نظر می توان گفت که یک سرور ابری، یک سرور بهینه است.

 

نتیجه گیری

در این مقاله در مورد اینکه سرور چیست و از چه اجزایی تشکیل شده است، فلسفه وجودی سرور چیست و سرورها چه کاری را برای ما انجام می دهند، کارایی سرور چیست و چه نمونه هایی از آن وجود دارد، و این موضوع مهم که عوامل تاثیر گذار روی کارایی سرور چیست و چه تاثیری روی آن دارند، صحبت کردیم. در صورتی که می خواهید از یکی از سرویس هایی که سرور ها ارائه می کنند استفاده کنید می توانید سری به صفحات سرور اختصاصی و سرور مجازی بزنید. مطمئنا گزینه های خوبی را که مناسب کار شما باشد پیدا خواهید کرد.

 

آموزش تیونینگ لایت اسپید به صورت جزء به جزء

وقتی که شما بخواهید .وبسایت خود را از نظر سرعت و کیفیت بهینه سازی کیند، همیشه گزینه های مختلف خواهید داشت که می توانید از آنها استفاده کنید. معمولا کارهایی مانند کش کردن صفحات، بهینه سازی تصاویر، بررسی قالب و همینطور استاندارد سازی اسکریپت ها و کدهای CSS جزو اقداماتی است که در ابتدای راه انجام می شود. اما اقدامات مهمتری است که میتواند سرعت سایت شما را به شدن بالاتر برده و به احتمال زیاد از هزینه های سایت شما نیز بکاهد. بررسی وب سرور و تیونینگ آن یکی از این موارد است که میتواند کیفیت بالا آمدن سایت شما و تجربه کاربری را به شدت بالا ببرد. یکی از وب سرور هایی که می تواند این قابلیت را به خوبی در اختیار شما بگذارد، لایت اسپید است. که در اینجا با تنظیمات تیونینگ لایت اسپید بیشتر آشنا خواهیم شد.

مطلب آموزش تیونینگ لایت اسپید به صورت جزء به جزء در تاریخ سوم اردیبهشت ماه بازنویسی و به طور کامل بروزرسانی شد

منظور از تیونینگ لایت اسپید چیست

در این مقاله هدف آشنایی با تنظیمات تیونینگ لایت اسپید است که در این بخش پارامترهای مربوط به Tuning توضیح داده می‌شود. در بخش Configuration کنسول ادمین LiteSpeed قسمت Tuning مربوط به یکسری از تنظیمات اصلی وب سرور جهت افزایش سرعت لود وب سایت هستند که در ادامه براساس LiteSpeed Tuning Configuration و با جزئیات توضیح داده خواهند شد. همانطور که در مقاله آشنایی با وب سرور لایت اسپید توضیح داده شد با اعمال تنظیمات صحیح تیونینگ لایت اسپید، سرعت لود وب سایت بصورت چشمگیری افزایش پیدا خواهد کرد.

چنانچه با وب سرور لایت اسپید آشنایی ندارید، می توانید به مقاله مذکور مراجعه کنید.

دسترسی به تنظیمات تیونینگ لایت اسپید

برای اینکه به تنظیمات مربوط به تیونینگ لایت اسپید دسترسی داشته باشید باید در صفحه‌ی اولیه پنل ادمین روی Configuration کلیک نمائید سپس وارد سربرگ Tuning شوید. برای اینکار طبق مراحل زیر انجام دهید:

تنظیمات لایت اسپید

Tuning لایت اسپید

پارامترهایی که در سربرگ تیونینگ لایت اسپید تنظیم می‌شوند و ما در ادامه آنها را توضیح خواهیم داد به هفت دسته‌ی کلی تقسیم می‌شوند:

  1. بهبود عملکرد سیستم عامل (OS Optimization)
  2. ارتباطات (Connection)
  3. درخواست‌ها و پاسخ‌ها (Request/Response)
  4. بهینه‌سازی تحویل فایل‌های استاتیک (Static File Delivery Optimization)
  5. فشرده‌سازی دو نوع GZIP و Brotli
  6. تنظیمات کلی SSL
  7. QUIC

لازم به ذکر است برای تغییر هر پارامتر روی دکمه‌ی Edit در روبروی دسته بندی کلیک نمائید.

پارامترهای بهبود عملکرد سیستم عامل در تیونینگ لایت اسپید

بخش OS Optimization از Tuning لایت اسپید مربوط به تنظیمات مرتبط با لایه سیستم عامل است که با وب سرور لایت اسپید در ارتباط هستند

 Tunning لایت اسپید

RAM Disk Path: تنظیم کردن این پارامتر تیونینگ لایت اسپید به شما اجازه می‌دهد تا محل قرار گیری دیسک RAM را مشخص کنید. یک سروری که رَم اضافی و بیکار دارد می‌تواند مدت زمان خواندن از دیسک (HDD) را با خواندن اطلاعات از رم دیسک کاهش دهد.

شاید برای شما سوال پیش بیاید که رم دیسک چیست؟ اگر بخواهیم بصورت خلاصه رم دیسک را توضیح دهیم RAM Disk یا رم درایو RAM Drive یک فناوری قدیمی است که به صورت یک درایو مانند همه‌ی درایوهای دیگر در کامپیوتر اجازه می‌دهد که بخشی از حجم حافظه تصادفی یا همان رَم را به یک فضای ذخیره سازی مستقل تبدیل کنیم به طوری بتوان فایل، برنامه ها و … را روی آن ذخیره و به حالت عادی از آنها استفاده نمود اما مهمترین ویژگی این فناوری این است که چندین برابر از هارد دیسک سریعتر است یعنی اگر نرم افزاری را داخل این درایو نصب کنید فرایند اجرای آن به مراتب کمتر از اجرای آن از روی هارد HDD و SSD است. وب سرور لایت اسپید LSWS برای بهبود عملکرد خود به شما اجازه می‌دهد که از این امکان در تیونینگ لایت اسپید استفاده کنید.

نکته رم دیسک ابتدا باید در تنظیمات سطح OS یا همان سیستم عامل انجام شود تا وب سرور بتواند از آن استفاده کند. معمولاً توزیع‌های مختلف لینوکس از /dev/shm بعنوان مسیر رم دیسک استفاده می‌کنند اما بصورت کلی به سیسم عامل بستگی دارد.

Default SHM Directory: با تنظیم این پارامتر تیونینگ لایت اسپید دایرکتوری پیش فرض مموری اشتراکی (shared memory) تغییر می‌کند و اگر این مسیر موجود نباشد ایجاد خواهد شد. همه‌ی داده‌های SHM در این دایرکتوری ذخیره می‌شوند مگر اینکه مسیر دیگری مشخص شود.

Reverse DNS Lookup: این پارامتر از تیونینگ لایت اسپید یک جستجویی مبتنی بر IP -> Domain Name برای هر یوزر انجام می‌دهد که می‌توانید برای دسترسی لاگین‌ها بررسی شود و بصورت پیش فرض نیز غیرفعال است.

پارامترهای ارتباطات

بخش Connection از تیونینگ لایت اسپید مربوط به تنظیمات اتصالاتی است که سرور قبول می‌کند با تنظیم صحیح پارامترهای این بخش، میزان connectionهای کمتری از دست خواهید داد و بهره‌وری کلی سرور افزایش خواهد یافت همچنین ریسک حملات DOS و DDOS کاهش پیدا می‌کند.

Tuning لایت اسپید

Max Connections: این پارامتر تیونینگ لایت اسپید از نوع integer است و حداکثر تعداد اتصالات یا Connectionهایی که سرور میتواند قبول کند را مشخص می‌کند. این مقدار مربوط به هر دو نوع اتصالات TCP ساده و SSL است. این عدد بهتر است که از حد سخت افزاری یا hard limitی که توسط server software edition یا لایسنس تعریف می‌شود، تجاوز نکند. این عدد برای انواع لایسنس به این شرح است: 500 برای لایسنس VPS و 800 برای Ultra VPS. زمانی که تعداد اتصالات همزمان ( concurrent connections ) به مقدار ماکسیمم تعریف شده رسید، سرور اتصالات زنده نگه داشته شده (Keep-Alive connections) را به محض تمام شدن درخواست‌شان میبندد.

نکته زمانی که سرور با یوزر root شروع به کار میکند، تلاش می‌کند تا محدودیت‌ها را بر اساس مقدار تعریف شده برای هر پروسه بصورت اتوماتیک تعریف کند که اگر با خطا مواجه شود ممکن است نیاز باشد مقدار این محدودیت را بصورت دستی افزایش دهید.

Max SSL Connections: این پارامتر تیونینگ لایت اسپید از نوع integer است و حداکثر تعداد اتصالات از نوع SSL یا SSL Connection هایی که سرور میتواند قبول کند را مشخص میکند. مجموع اتصالات SSL و non- SSL نباید از مقدار Max Connections تجاوز کند بنابراین باید مقدار واقعی Max SSL Connections مجاز کمتر از Max Connections باشد.

Connection Timeout (secs): این پارامتر نیز از نوع integer است و ماکسیمم مدت زمان بیکاری یک اتصال در طول پردازش یک درخواست را مشخص می‌کند. اگر در طول این زمان درخواست بیکار باشد مثلاً هیچ فعالیت ورودی یا خروجی ( I/O activity ) نداشته باشد، اتصال بسته می‌شود.

نکته: اگر این پارامتر به مقدار کمی تنظیم شود، باعث می‌شود که در طول حملات DoS اتصالات زیادی که سمت سرور هستند سریع بسته شوند.

Max Keep-Alive Requests: این پارامتر تیونینگ لایت اسپید هم یک عدد از نوع integer است و ماکسیمم تعداد درخواست‌هایی را مشخص می‌کند که در طول یک جلسه پایدار و فعال (persistent session ) از سمت سرور پذیرفته و پردازش می‌شود. بعد از رسیدن به این عدد، سرور تمامی اتصالات را میبندد.

Keep-Alive چیست؟ با استفاده از Keep-Alive یک پل ارتباطی بین وب سرور و مرورگر ایجاد می‌شود بنابراین برای هر درخواست نیاز به یک اتصال جدید نیست و از طریق یک اتصال چند فایل رد و بدل می‌شود.

نکته: بهتر است این پارامتر تا حد قابل قبولی بالا باشد. مقادیر “1” و “0” حالت keep-alive را غیرفعال می‌کنند.

Keep-Alive Timeout (secs): این پارامتر از نوع integer است و ماکسیمم زمان بیکاری بین درخواست‌های یک اتصالی که در حالت فعال است (keep-alive) را مشخص می‌کند. منظور این است که زمانی‌که یک اتصال بین وب سرور و مرورگر برقرا می‍‌شود اگر در این مدت تعیین شده هیچ درخواستی ارسال نشود، کل اتصال بسته می‌شود و برای درخواست‌های بعدی باید اتصال جدیدی برقرار شود. این تنظیمات فقط برای اتصالات HTTP/1.1 کار می‌کند. اتصالات HTTP/2 دارای keep-alive timeoutهای طولانی‌تری هستند و تحت تاثیر این تنظیمات نیستند.

Send Buffer Size (bytes): این پارامتر از نوع integer است و سایز بافر ارسالی برای هر سوکت TCP را مشخص می‌کند. ماکسیمم مقدار مجاز512K است.

نکته: بهتر است این پارامتر به حالت ” Not Set ” یا 0 تنظیم شود تا از مقادیر پیش فرضی که توسط سیستم عامل تعیین می‌شود، تبعیت کند. همینطور اگر وب سایتتان فایل‌هایی با سایز بزرگ ارسال می‌کند بهتر است سایز بار ارسالی برای بهبود عملکرد افزایش داده شود. نکته دیگری که وججود دارد و لازم است که به آن توجه داشته باشید، کاهش این پارامتر متواند توان عملیاتی و مموری مصرفی را کاهش دهد.

Receive Buffer Size (bytes): این پارامتر از نوع integer است و سایز بافر دریافتی برای هر سوکت TCP را مشخص می‎کند. ماکسیمم مقدار مجاز512K است.

نکته: بهتر است این پارامتر به حالت ” Not Set ” یا 0 تنظیم شود تا از مقادیر پیش فرضی که توسط سیستم عامل تعیین می‌شود، تبعیت کند. همینطور اگر سایز بافر دریافتی زیاد باشد هنگام پردازش درخواست های ورودی با payload بزرگ موجب افزایش عملکرد می‌شود و کاهش این پارامتر متواند توان عملیاتی و مموری مصرفی را کاهش دهد.

پارامترهای مربوط به درخواست‌ها و پاسخ‌ها در تیونینگ لایت اسپید

بخش Request/Response از تیونینگ لایت اسپید مربوط به درخواست‌ هایی که کاربران به سمت وب سایت ارسال می کنند و همچنین پاسخ‌ هایی که دریافت می‌کنند، می باشد.

Tuning لایت اسپید

Max Request URL Length (bytes): این پارامتر تیونینگ لایت اسپید از نوع integer است و ماکسیمم طول مجاز URL است. URL یک آدرس متنی است که برای دسترسی به وب سایت استفاده می‌شود. محدودیت سخت افزاری 65530 بایت است، اگر این پارامتر به مقداری بزرگتر مانند 64K تنطیم شود زمانی استفاده می‌شود که 65530 پر شد. مقدار پیش فرض این پارامتر 8192 یا 8K است.

Max Request Header Size (bytes): این پارامتر از نوع integer است و ماکسیمم سایز هدر HTTP یک URL درخواستی را مشخص می‌کند. محدودیت سخت افزاری این پارامتر 65530 بایت است و برای مقادیر بزرگتر از این عدد اگر کل مقدار 65530 پر شود، مورد استفاده قرار می‌گیرند.

نکته: برای کاهش مموری مصرفی، رفع باگ‌های احتمالی و تشخیص DoS، تا حد امکان این پارامتر را در تیونینگ لایت اسپید کوچک نگاه دارید. در حالت عادی مقدار 4-8K برای بیشتر وب سایت‌ها مناسب است.

Max Request Body Size (bytes): این پارامتر تیونینگ لایت اسپید ماکسیمم سایز مربوط به body یک درخواست HTTP را مشخص می‌کند. حداکثر مقدار آن برای سیستم عامل‌های 32Bit عدد 2GB و برای سیستم عامل‌های 64 بیتی این عدد بصورت مجازی نامحدود است.

نکته: برای کمک به جلوگیری از حملات DoS، در تیونینگ لایت اسپید این پارامتر را به مقدار واقعی مورد نیازتان محدود کنید. فضای swap شما نیز باید فضای کافی برای تأمین این حد را داشته باشد.

Max Dynamic Response Header Size (bytes): این پارامتر از نوع integer است و ماکسیمم سایز هدر پاسخ هایی که بصورت داینامیک ایجاد می‌شوند را مشخص می‌کند. محدودیت سخت افزاری این پارامتر 65530 بایت است و برای مقادیر بزرگتر از این مقدار اگر عدد 65530 کاملاً استفاده شود، آن مقدار مورد استفاده قرار می‌گیرد. مقدار پیش‌فرض برایاین پارامتر در تیونینگ لایت اسپید برابر با 32768 یا 32K در نظر گرفته می شود.

نکته: برای تشخیص پاسخ‌های داینامیکِ بدِ تولید شده توسط اپلیکیشن‌های خارجی، این پارامتر را به مقدار منطقی پایینی تنظیم نمائید.

Max Dynamic Response Body Size (bytes): این پارامتر از نوع integer است و ماکسیمم سایز بدنه یا body پاسخ‌هایی که بصورت داینامیک ایجاد می‌شوند را مشخص می‌کند. حداکثر حد مجاز برای این پارامتر 2047MB است.

پارامترهای بهینه‌سازی تحویل فایل‌های استاتیک در تیونینگ لایت اسپید

بخش Static File Delivery Optimization از تیونینگ لایت اسپید مربوط به بهینه سازی فایل‌های ثابتی است که در طی درخواست‌ ها و پاسخ‌ ها برای کاربران وب‌ سایت ارسال می‌ شوند. تنظیمات این پارامتر ها به ویژه زمانی که حجم فایل‌ ها زیاد باشد بسیار حائز اهمیت است.

Tuning لایت اسپید

Max Cached Small File Size (bytes): این پارامتر از نوع integer است و سایز بزرگترین فایلی که می‌ تواند در مموری کَش شود را مشخص می‌ کند. بصورت کلی فایل‌ های استاتیک به 4 صورت می‌ توانند خوانده شوند: memory buffer cache، memory-mapped cache، plain read/write و sendfile();.

فایل‌ هایی که سایز آنها از این مقدار کمتر است از memory buffer cache خوانده می‌ شوند، فایل‌ هایی که سایز آنها از این مقدار بیشتر است اما از Max MMAP File Size (bytes) (در ادامه تیونینگ لایت اسپید این پارامتر را توضیح خواهیم داد) کمتر است از memory-mapped cache خوانده می‌ شوند و فایل‌ هایی که سایز آنها بیشتر از Max MMAP File Size (bytes) است توسط plain read/write یا sendfile(); خوانده می‌ شوند. بهینه‌ ترین حالت نگهداری فایل‌ های استاتیک با سایز کمتر از 4K در memory buffer cache است.

نکته: در واقع memory-mapped cache بخشی از مموری مجازی است که بصورت بیت به بیت به یک فایل نسبتاً بزرگ اختصاص داده می‌ شود. در واقع نگاشتی از فایل در مموری قرار می‌ گیرد که باعث افزایش کارایی ورودی خروجی خصوصاً روی فایل‌ های بزرگ است.

Total Small File Cache Size (bytes): این پارامتر تیونینگ لایت اسپید از نوع integer است و مشخص کننده مقدار کل مموری که می توان به کشِ بافر برای نگهداری یا کَش فایل‌ های استاتیک کوچک تخصیص داد.

Max MMAP File Size (bytes): این پارامتر تیونینگ لایت اسپید از نوع integer است و مشخص کننده بزرگترین فایلی است که می‌ تواند در مموری map یا نگاشت شود. فایل‌های استاتیک در 4 قسمت می‌ توانند نگهداری شوند: memory buffer cache، memory-mapped cache، plain read/write و sendfile();.

فایل‌هایی که سایز ان ها کمتر ااز Max Cached Small File Size باشد از memory buffer cache خوانده می شود . فایل‌ هایی که سایز آنها بیشتر از Max Cached Small File Size باشد اما از Max MMAP File Size کمتر باشد از memory-mapped cache خوانده می‌ شوند و فایل‌ هایی که سایز آنها بیشتر از Max MMAP File Size (bytes) است توسط plain read/write یا sendfile() خوانده می‌ شوند. از آنجا که سرور فضای آدرس 32 بیتی دارد ( 2 گیگ) پیشنهاد می شود این پارامتر خیلی بزرگ نباشد.

Total MMAP Cache Size: این پارامتر تیونینگ لایت اسپید از نوع integer است و مقدار نهایی و کلی که می‌ توان برای memory- mapped cache برای کش کردن یا خواندن فایل‌ های استاتیک با حجم متوسط استفاده شود را مشخص می‌ ‎کند.

use sendfile(); : این پارامتر تیونینگ لایت اسپید از نوع radio box انتخابی است و مشخص می‌کند در چه وضعیتی از سیستم فراخوانی sendfile() برای فایل‌های استاتیک استفاده شود. همانطور که قبلاً توضیح داده شد فایل‌ های استاتیک به چهار روش پردازش می شوند: memory buffer cache، memory-mapped cache، plain read/write و sendfile();. فایل‌های کوچکتر از Max Cached Small File Size از memory buffer cache پردازش می شوند.

فایل‌ های بزرگتر از Max Cached Small File Size اما کوچکتر از Max MMAP File Size از memory-mapped cache پردازش می‌ شوند. فایل‌ های بزرگتر از Max MMAP File Size بصورت read/write ساده یا توسط sendfile(); استفاده می شوند. sendfile(); یک سیستم فراخوانی “zero copy” است که می‌تواند بهره وری CPU را موقع خواند فایل‌ های بزرگ بشدت کاهش دهد. sendfile(); به یک درایور کارت شبکه با هسته بهینه شده نیاز دارد و بهمین جهت برای آداپتور های شبکه سایز کوچک نمی تواند مناسب باشد.

Use AIO: این پارامتر تیونینگ لایت اسپید حالت انتخابی از لیست کشویی دارد. AIO مخفف asynchronous I/O است، در واقع نوعی از پردازش ورودی / خروجی است که اجازه می دهد تا پردازش دیگر که به I/O وابسته هستند قبل از پایان انتقال فعلی ادامه یابد. در واقع این با فعال کردن این پارامتر امکان استفاده از AIO برای فایل‌ های استاتیک فراهم می‌ شود. این پارامتر مرتبط با I/O است و اگر سرور I/O wait بالایی دارد این پارامتر مفید و کمک کننده است. برای سیستم‌های 64 بیتی این امکان وجود دارد که فایل‌ های نگاشت شده در فضای پردازش آدرس برای بهبود کارآیی AIO نگهداری شوند.

AIO Block Size: این پارامتر حالت انتخابی از لیست کشویی دارد و سایز بلاک ارسالی برای AIO را مشخص می‌ کند. این بلاک سایز در تعداد کل فایل‌ هایی که در حال پردازش هستند ضرب می‌ شود و مقدار نهایی آن باید کمتر از physical memory سرور باشد در غیر اینصورت AIO کارایی نخواهد داشت. اگر سرور به اندازه کافی memory دارد می‌ توانید از اعداد بزرگتری استفاده کنید. مقدار پیش فرض این پارامتر “1M” است.

File ETag: این پارامتر بصورت انتخاب از بین چند گزینه است و برای استفاده از ویژگی‌‌ های inode فایل، آخرین زمان اصلاح فایل و سایز برای تولید هدرETag HTTP در فایل‌ های استاتیک است. این سه مشخصه ذکر شده بصورت پیش‌ فرض فعال هستند. اگر قصد پردازش فایل از جایی خارج از سرور فعلی دارید بعنوان مثال از روی سرور mirrored شده، بهتر است که inode فایل را تیک نزنید، زیرا اگر تیک بخورد ETag که برای فایل تولید می شود روی سرور ها متفاوت خواهد بود!

فشرده‌سازی دو نوع GZIP و Brotli در تیونینگ لایت اسپید

بخش GZIP/Brotli Compression از تیونینگ لایت اسپید مربوط به تنظیمات فشرده سازی است. در واقع این تنظیمات تیونینگ لایت اسپید مربوط به الگوریتم‌های فشرده‌سازی GZIP و Brotli هستند.

Tuning لایت اسپید

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

  1. الگوریتم GZIP که قدیمی‌ تر است و روی انواع مدیا ها مانند عکس و فیلم و … اجرا می‌شود
  2. الگوریتم Brotli که اخیراً ارائه شده است کاربردی عمومی دارد و هر نوع فایلی را فشرده می‌کند

پیشنهاد می‌ شود که الگوریتم Brotli برای PNG ، JPG و GIF استفاده نشود و معمولاً روی فایل‌ های مبتنی بر متن مانند HTML، جاوا اسکریپت و CSS بهترین کارآیی را دارد. الگوریتم Brotli توسط شرکت گوگل ارائه شد و بعلت کارآیی فوق‌ العاده‌ اش به سرعت همه‌ گیر شد، این الگوریتم در مقایسه با GZIP قدرت بیشتری دارد.

Enable Compression: این پارامتر تیونینگ لایت اسپید به صورت انتخاب از دکمه رادیویی است و فشرده سازی نوع GZIP/Brotli را برای انواع فایل‌ های استاتیک و داینامیک فعال می‌ کند. این گزینه در حالت پیش فرض تنظیمات تیونینگ لایت اسپید فعال است.

نکته: فعال کردن آن موجب کاهش پهنای باند مصرفی شبکه می‌شود. فایل‌های مبتنی بر متن مانند html ، css و javascript تا 50% می توانند کاهش حجم داشته باشند که این خیلی عالی است.

Compressible Types: مشخص می‌ کند چه نوعی از MIME ها فشرده شوند. بهتر است unset باشد یا تنظیمات default گذاشته شود تا mime-typesهای پیش فرض سرور استفاده شود زیر تقریباً اکثر آنها را پوشش می‌دهد.

مقادیر پیش فرض این پارامتر در تیونینگ لایت اسپید به این صورت می باشند:

text/*

application/x-javascript

application/javascript

application/xml

image/svg+xml

application/rss+xml

application/json

application/vnd.ms-fontobject

application/x-font

application/x-font-opentype

application/x-font-truetype

application/x-font-ttf

font/eot

font/opentype

font/otf

font/ttf

image/x-icon

image/vnd.microsoft.icon

application/xhtml+xml

مثال: اگر قصد تغییر آنها را دارید و می‌خواهید نوع خاصی را حذف کنید از علامت ! استفاده کنید بعنوان مثال می‌خواهید نوع text/* فشرده شود اما text/css نشود. به رولی شبیه text/*, !text/css نیاز دارید.

نکته: در این بخش از تنظیمات تیونینگ لایت اسپید فقط از نوع‌ هایی استفاده کنید که فشرده سازی GZIP/Brotli برای آنها مفید باشد. فایل‌ های باینری مثل عکس‌ های gif/png/jpeg یا فایل‌ های flash از این فشرده سازی سودی نمی‌ برند چون این این نوع فایل‌ ها بعلت پسوند شان از قبل فشرده شده‌ اند و Brotli در واقع آنها را بزرگتر می‌ کند.

Enable GZIP Dynamic Compression: این پارامتر تیونینگ لایت اسپید به صورت انتخاب از دکمه رادیویی است و با فعال کردن آن فشرده سازی GZIP پاسخ‌هایی که اتوماتیک تولید می‌ شوند را کنترل می‌ کند. برای کارکرد درست این پارامتر باید Enable Compression که بعنوان اولین پارامتر این بخش توضیح داده شد، فعال باشد.

نکته: این پارامتر تیونینگ لایت اسپید بهره وری رَم و سی‌ پی‌ یو را افزایش می‌ دهد و موجب ذخیره‌ پهنای باند شبکه می‌ شود.

GZIP Compression Level (Dynamic Content): این پارامتر تیونینگ لایت اسپید از نوع عددی بین 1 تا 9 است و مشخص کننده‌ سطح فشرده‌ سازی الگوریتم GZIP که روی محتوای داینامیک اعمال می‌ شود. این پارامتر از رنج 1 (کمترین فشرده‌سازی ) تا 9 (بیشترین فشرده‌ سازی) تغییر می‌ کند. برای اعمال این پارامتر باید Enable Compression و Enable GZIP Dynamic Compression که پیش‌ تر توضیح داده شدند، فعال باشند. مقدار پیش فرض این پارامتر 6 است.

نکته: سطح فشردگی بالا از CPU و memory بیشتری استفاده می‌ کند. اگر از سرور قدرتمندی استفاده می‌ کنید می توانید این پارامتر را روی مقادیر بالا سِت کنید اما تفاوت محسوسی بین رنج 6 و 9 نیست اما 9 از CPU cycles خیلی بیشتری استفاده می‌ کند.

Brotli Compression Level (Dynamic Content): این پارامتر تیونینگ لایت اسپید از نوع عددی بین 0 تا 6 است و سطح فشرده‌ سازی برای الگوریتم Brotli که روی responses های پویا اعمال می‌‌ شود را مشخص می کند. رنج این پارامتر از 0 (غیر فعال شدن فشرده‌ سازی) تا 6 ( بیشترین فشرده‌ سازی ) است. این تنظیمات زمانی اعمال می‌ شود که Enable Compression فعال باشد.

Auto Update Static File: این المان در تیونینگ لایت اسپید مشخص می‌ کند آیا ورژن‌ های فشرده‌ سازی GZIP/Brotli روی فایل‌ های استاتیک بصورت اتوماتیک ایجاد یا آپدیت شود یا خیر؟ اگر این پارامتر به Yes تنظیم شود، زمانی که یک فایل با MIME type موجود در Compressible Types ها درخواست داده می‌ شود، سرور الگوریتم فشرده‌ سازی متناسب با آن فایل را براساس نوع فایل ایجاد یا آپدیت می‌ کند. فشرده‌ سازی فایل در Static Cache Directory یا همان دایرکتوری کش ثابت انجام می‌ شود نام فایل هم براساس MD5 hash از مسیر فایل اصلی ایجاد می‌ شود.

GZIP Compression Level (Static File): این پارامتر از نوع عددی بین 1 تا 9 است و سطح فشرده‌سازی الگوریتم GZIP روی محتوای استاتیک را مشخص می‌کند. این پارامتر از رنج 1 (کمترین فشرده‌سازی) تا 9 (بیشترین فشرده‌سازی) تغییر می‌کند. برای اعمال این تنظیمات باید پارامترهای Enable Compression و Auto Update Static File فعال باشند. مقدار پیش‌فرض این پارامتر 6 است.

Brotli Compression Level (Static File): پارامتر مورد نظر در تیونینگ لایت اسپید از نوع عددی بین 1 تا 11 است و سطح فشرده‌سازی الگوریتم Brotliی که روی فایل‌های استاتیک اعمال میشود را مشخص میکند. رنج این پارامتر از 1 (کمترین فشرده‌سازی ) تا 11 ( بیشترین فشرده‌سازی) است. این تنظیمات زمانی اعمال می‌شود که Enable Compression فعال باشد. مقدار پیش فرض این پارامتر 5 است. برای اعمال این پارامتر باید Enable Compression و Auto Update Static File فعال باشند.

نکته: این پارامتر میزان پهنای باند شبکه کمتری مصرف می‌ کند. پاسخ‌ های مبتنی بر متن مثل فایل‌های html, css و javascript بیشترین میزان بهره‌ وری از این قابلیت را دارند و می‌ توانند تا 50 درصد  نسبت به فایل اصلی فشرده شوند.

Static Cache Directory: این پارامتر تیونینگ لایت اسپید از نوع مسیر دایرکتوری است و مشخص کننده مسیر دایرکتوری‌ ای است که برای ذخیره‌ ی فایل‌ های استاتیک فشرده شده استفاده می‌ شود. این دایرکتور بصورت پیش فرض SWAP است.

Max Static File Size (bytes): در تیونینگ لایت اسپید این مورد از نوع عددی و در واحد بایت می باشد. ماکسیمم سایز یک فایل استاتیک است برای فشرده‌ سازی اتوماتیک را مشخص می‌ کند. مقدار پیش فرض آن 10M است و این پارامتر مقادیر نباید کمتر از 1K (در مقیاس بایت) باشد.

نکته: پبشنهاد می‌شود که فشرده‌سازی فایل برای فایل‌های بزرگ ایجاد یا آپدیت نشود.

Min Static File Size (bytes): مینیمم سایز یک فایل استاتیک برای اجرای الگوریتم فشرده‌ سازی مرتبط را در تیونینگ لایت اسپید مشخص می‌ کند. مقدار پیش فرض 200 بایت است و بهتر است از این مقدار کمتر نباشد.

نکته فشرده‌ سازی فایل‌ ها با سایز خیلی کوچک ضروری نیست زیرا پهنای باند زیادی مصرف نمی‌ کنند.

تنظیمات کلی SSL تیونینگ لایت اسپید

بخش SSL Global Setting از تیونینگ لایت اسپید مربوط به تنظیمات گواهینامه‌های SSL است که روی وب سایت‌ ها نصب می‌ شوند.

تنظیمات لایت اسپید

Default Cipher Suite:  این پارامتر الگوریتم Cipher Suite پیش‌فرض مورد استفاده برای گواهینامه‌های ssl را مشخص میکند و ورودی آن بصورت Cipher مدنظر است و Cipher ها با ; جدا میشوند.

Cipher Suite ها مجموعه ای از الگوریتم ها و دستورالعمل‌هایی هستند که برای استفاده از TLS و SSL به جهت امن کردن اتصالات شبکه استفاده می‌شوند.

SSL Strong DH Key: این پارامتر مشخص میکند که از DH keys با 2048 بیت برای پروسه دست دهی SSL (SSL Handshake) استفاده شود  یا از 4096بیتی. این پارامتر ازنوع انتخابی از دکمه رادیویی است.

DH Key کلیدی است که مبتنی برا الگوریم Diffie-Hellman ایجاد میشود و در  SSL/TLS استفاده می‌شود.

Enable Certificate Compression: قابلیت فشرده سازی SSL را فعال می‌کند. این پارامتر ازنوع انتخابی از دکمه رادیویی است.

Enable Handshake Offload: در تیونینگ لایت اسپید این پارامتر از نوع انتخابی از دکمه‌های رادیویی است. با فعالی سازی این پارامتر پروسه Handshake SSL در یک thread جداگانه بارگیری می‌شود. بصورت پیش فرض نیز فعال است.

Enable Session Cache: این پارامتر تیونینگ لایت اسپید ازنوع انتخابی از دکمه‌های رادیویی است، قابلیت کَش کردن شناسه جلسه یا همان session id را با استفاده از تنظیمات پیش‌فرض OpenSSL مجاز می‌کند و بصورت پیش‌فرض غیرفعال است.

Session Cache Size (bytes): این پارامتر از نوع عددی است و ماکسیمم تعداد شناسه جلسه‌های SSL ( SSL session IDs) که میتوان در کَش ذخیره کرد را مشخص می‌کند. مقدار پیش فرض 1.000.000 است.

Session Cache Timeout (secs):  این پارامتر از نوع عددی است و مشخص کننده‌ مدت زمانی که یک شناسه‌ی جلسه (session ID) داخل cache معتبر است و بعد از آن برای ادمه‌ی session نیاز به مذاکره مجدد هست. مقدار پیش‌فرض این پارامتر 3600 است.

Enable Session Tickets: این پارامتر بلیط جلسه یا همان session ticket را با استفاده از تنظیمات session ticket پیش فرض OpenSSL فعال می‌کند. برای اینکه این پارامتر روی هاست‌های مجازی یک سرور ( Server-level) موثر باشد باید تنظیمات مربوط به Server-level فعال باشد. بصورت پیش فرض Server-level و VH-Level فعال هستند.

session ticket قابلیتی که در آخرین تغییرات پروتکل SSL برای پروسه دست‌دهی یا همان handshake اضافه شده است که در یک session ticket اطلاعات کامل مربوط به session ارسال میشود مانند Cipher Suiteی که استفاده می‌شود.

SSL Session Ticket Key File: این پارامتر اجازه میدهد که SSL Ticket Key توسط administrator ایجاد یا نگهداری شود. فایل باید 48 بایت باشد و اگر این پارامتر خالی بماند، متعادل کننده بار ( load balancer) مجموعه کلیدهای خود را تولید و نگهداری می‌کند. فرمت این پارامتر نیز بصورت مسیر یک دایرکتوری است.

نکته: برای حفاظت از امنیت پیش رو (Forward secrecy)، اکیداً توصیه می‍شود که Key بعد از اتمام ثانیه های مدت عمر SSL Session Ticket تغییر داده شود. اگر نمیتوانید این مورد را کنترل نمائید بهتر است این پارامتر خالی گذاشته شود.

Forward secrecy یک policy جدید از پروتکل HTTPS است که مطابق با این سیاست در صورتی که کلیدهای یک Session یا همان نشست SSL دزدیده شود امکان هک یا دزدیده شدن کلیدهای نشست‌های قبلی و بعدی نخواهد شد. بهمین خاطر برای پارامتر اکیداً توصیه می‌شود که بعد از اتمام Lifetime یک SSL session ticket فایل key تغییر داده شود.

QUIC در تیونینگ لایت اسپید

بخش QUIC از تیونینگ لایت اسپید، مربوط به تنظیمات پروتکل QUIC هستند.

تنظیمات لایت اسپید

QUIC مخفف Quick UDP Internet Connections است که یک روش جدید انتقال است که تاخیر را در مقایسه با TCP کاهش می‌دهد. این پروتکل توسط گوگل طراحی شده و بسیار شبیه TCP+TLS+HTTP/2 است که روی UDP اجرا شوند. که این پارامتر پهه‌ی پروتکل های شبکه‌ای سرور را روی QUIC فعال میکند و بصورت پیش فرض نیز فعال است.

Enable QUIC: در تیونینگ لایت اسپید این پارامتر پروتکل‌ شبکه‌ای سرور QUIC فعال می‌کند و بصورت پیش‌ فرض نیز فعال است.

نکته اگر QUIC فعال شود همچنان در listener level  از طریق  Allow QUIC یا virtual host level از طریق Enable QUIC می‌توان آن را غیرفعال کرد.

QUIC SHM Directory: دایرکتوری ذخیره‌ی داده‌های QUIC در حافظه‌ی اشتراکی را مشخص می‌کند. SHM در اینجا مخفف save to shared memory است. دایرکتوری پیش‌فرض /dev/shm است.

نکته: برای این پارامتر یک پارتیشن مبتنی بر رَم مانند /dev/shm استفاده می‌شود.

QUIC Versions: این پارامتر یک لیستی از ورژن‌های QUIC است. این تنظیمات فقط برای محدود کردن پشتیبانی از ورژن‌های QUIC موجود استفاده می‌شود و بهتر است این فیلد خالی بماند. این پارامتر بصورت ورژن‌هایی از QUIC است که با کاما مجزا می‌شوند. بعنوان مثال: Q035, Q039

نکته: اکیداً توصیه می‌شود این پارامتر خالی گذاشته شود تا بهترین تنظیمات بصورت اتوماتیک اعمال شود.

Congestion Control: این پارامتر مشخص کننده الگوریتم کنترل ازدحام (congestion control) مورد استفاده است. congestion control مبحثی مربوط به پروتکل‌های شبکه مانند TCP است که از ازدحام بیش از حد داده‌های انتقالی در صف انتظار که موجب از بین رفتن بسته‌ها می‌شود، جلوگیری می‌کند. این پارامتر را میتوان بصورت دستی تنظیم کرد یا اینکه با انتخاب حالت Default روی مقادیر موجود در کتابخانه‌های QUIC تنظیم شود.

Connection Flow Control Window: سایز ابتدایی بافر تخصیص داده شده برای یک اتصال QUIC است. مقدار پیشفرش این پارامتر  1.5M است. این پارامتر می تواند بین 64K و 512M تنظیم شود.

نکته: مقدار بیشتر از محدوده‌ی اعلام شده از مموری بیشتری استفاده میکند.

Max Connection Flow Control Window: مشخص کننده ماکسیم سایزی است که به window buffer یک اتصال کنترل ازدحام برای تنظیم سایز windows داده میشود. در واقع windows مفهومی است که در الگوریتم‌های کنترل ازدحام  استفاده می‌شود.

مقدار پیش‌فرض این پارامتر صفر است و به این معنا است که مقدار Connection Flow Control Window (پارامتر قبلی) استفاده می‌شود و auto-tuning یا همان تنظیم خودکار انجام نخواهد شد. این پارامتر میتواند صفر باشد یا به عددی بین 64K و 512M تنظیم شود.

نکته: تنظیم مقدار بیشتر از محدوده‌ی اعلام شده از مموری بیشتری استفاده می‌کند.

Stream Flow Control Window: این مورد در تیونینگ لایت اسپید مقدار اولیه‌ای از داده‌ها است که برای یک ارتباط QUIC در هر استریم دریافت خواهد کرد. مقدار پیش فرض این پارامتر 1M است. این پارامتر میتواند عددی بین 64K و 128M بگیرد.

نکته: تنظیم به مقدار بیشتر از محدوده‌ی اعلام شده از مموری بیشتری استفاده می‌کند.

Max Stream Flow Control Window: مشخص کننده‌ی ماکسیمم سایز window از یک استریمِ کنترل جریان (stream flow control window) است که برای تنظیم خودکار window مجاز است.

مقدار پیش فرض صفر است و به این معنا است که مقدار Stream Flow Control Window استفاده می‌شود و auto-tuning یا همان تنظیم خودکار انجام نخواهد شد. این پارامتر می‌تواند عددی بین

64K و 128M بگیرد.

نکته: تنظیم به مقدار بیشتر از محدوده‌ی اعلام شده از مموری بیشتری استفاده می‌کند.

Max Concurrent Streams Per Connection: ماکسیمم تعداد مجاز استریم در هر ارتباطِ QUIC است. مقدار پیشفرض این پارامتر نیز 100 است و بصورت کلی یک عدد Integer در بازه 10 تا 100 میگیرد.

Handshake Timeout: مدت زمانی به ثانیه که به یک اتصال جدید QUIC داده می‌شود تا پروسه handshake را کامل کند و بعد از آن اتصال قطع می‌شود. (aborted ) مقدار پیش فرض نیز 10 است. بصورت کلی یک عدد Integer در بازه 1 تا 15 میگیرد.

Idle Timeout: این پارامتر از نوع Integer است و عددی بین 10 تا 30 به ثانیه می‌گیرد و مشخص کننده مدت زمانی است که اگر در طول این بازه یک اتصال QUIC بیکار باشد، بسته می‌ شود. مقدار پیش‌ فرض این پارامتر 30 است.

نتیجه گیری

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

NginX چیست معرفی دومین وب سرور محبوب جهان

وقتی شما قصد راه اندازی یک سایت را داشته باشید، یکی از اصلی ترین و مهمترین مواردی که باید به آن توجه ویژه داشته باشید وب سرور شما است. کار وب سرور این است که به درخواست هایی که از طرف مراجعان به سایت شما ارسال می شود پاسخ دهد و در واقع این وب سرور است که سایت را روی هاست و یا سرور مجازی شما مدیریت کرده و به بازدیدکنندگان و مشتریان شما می رساند. در این مقاله در مورد یکی از بهترین و بزرگترین وب سرور های دنیا با هم صحبت خواهیم کرد و به این سوال که NginX چیست و چرا این اسم پر آوازه را برای خود به هم زده است می پردازیم.

 

 مطلب NginX چیست معرفی دومین وب سرور محبوب جهان در تاریخ چهارم فروردین ماه بازنویسی و به طور کامل بروزرسانی شد

 

NginX چیست

وب سرور NginX که به صورت انجین-ایکس تلفظ می شود ،یک وب سرور رایگان با حجم پایین و کارایی بسیار بالا است که تحت لایسنس BSD منتشر شده است، بهترین امتیاز این وب سرور در پشتیبانی فایل های استاتیک است. این وب سرور مصرف رم بسیار پایین و سرعت پاسخگویی بسیار بالا به درخواست ها را دارا می باشد. از این وب سرویس بیشتر برای سیستم‌های لود بالانس استفاده می شود. در ادامه بیشتر به بررسی اینکه شروع به کار NginX از کجا بوده است و به کجا رسیده است، صحبت خواهیم کرد.

ساختار NginX

 

نقطه شروع NginX چیست

اگر بخواهیم بگوییم که نقطه شروع به کار NginX چیست میتوانیم سال 2004 را برای این موضوع معرفی کنیم. در واقع NginX یک وب سرور منبع باز وب است که از سوی یک مهندس نرم‌افزار روس نوشته شد. از زمان آغاز به کار آن ، این سرور وب روی بهره‌ وری بالا، همزمانی بالا و همچنین استفاده کمتر از حافظه تمرکز داشت. قابلیت‌های بیشتری که روی کارکرد آن تاثیر می‌ گذاشت مانند توازن در بارگذاری، حافظه نهان، کنترل دسترسی و پهنای باند و قابلیت یکپارچه‌ سازی موثر با برنامه‌های کاربردی فراوان، از انجین‌ ایکس یک گزینه خوب برای معماران وب‌ سایت‌ های نوین ساخت. اکنون این سرور وب در جایگاه دوم محبوب‌ ترین سرورهای منبع باز وب در اینترنت قرار دارد.

 

علت رشد سعودی NginX چیست

این روز ها اینترنت آنقدر گسترده شده است که در دهه گذشته پیش بینی آن غیر ممکن بود. تحولی عظیم از  HTMLهای ساده که متن‌های قابل کلیک ارائه می‌کردند و بر پایه NCSA و روی سرور های وب آپاچی بودند تا میانگیر های ارتباطی که همواره برقرار هستند و ازسوی بیش از دو‌ میلیارد کاربر در سراسر جهان مورد استفاده قرار می گیرند. با افزایش تعداد کامپیوترها، دستگاه‌ های موبایل و تبلت‌ هایی که همواره متصل هستند، چشم‌ انداز اینترنت به سرعت در حال تغییر است. جزئیات سرویس‌ های آنلاین بسیار بیشتر شده و به‌ سمت دسترسی به اطلاعات و سرگرمی‌های برخط حرکت می‌کنند. بنابراین وب‌سایت‌ها در زمان حال بسیار پیچیده‌تر از قبل شده‌اند و عموما به مهندسی بیشتری برای پیشرفت و مقیاس‌پذیری نیاز‌ دارند. NginX یکی از وب سرور هایی بود که تمرکز خود را روی این قضیه معطوف کرد.

علت رشد NginX

همواره یکی از بزرگ‌ترین چالش‌ های یک معمار وب‌ سایت، همزمانی درخواست‌ ها بوده است. از ابتدای به وجود آمدن سرویس‌ های وب، تعداد درخواست‌ های همزمان در حال رشد است. برای یک وب‌سایت محبوب اصلا غیر معمول نیست که بتواند به صد ها هزار یا حتی میلیون‌ها کاربر به‌طور همزمان سرویس دهد. در دهه گذشته علت اصلی همزمانی، اتصال‌ های کند بود -کاربرانی با ارتباطات تماسی یا Dial-up– اما امروزه افزایش همزمانی علت دیگری دارد؛ ترکیبی از کاربران موبایل و معماری‌ های جدیدتر برنامه‌ های کاربردی که معمولا برپایه نگه‌ داشتن ارتباطی پایدار هستند و به کاربران اجازه می‌ دهند با اخبار و اطلاعاتی که از طریق دوستان خود دریافت می‌ کنند، به‌ روز شوند. عامل مهم دیگری که به افزایش همزمانی کمک می‌ کند، تغییر رفتار مرورگر های نوین است؛ این‌گونه مرورگر ها برای بالا بردن سرعت بارگذاری، چهار یا شش اتصال همزمان را با یک وب‌سایت برقرار می‌کنند.

 

نقش NginX در فراهم کردن همزمانی

برای نشان دادن مشکلی که برای ارتباط با اتصال‌های کند به‌وجود می‌آید، یک وب‌ سرور مبتنی بر آپاچی را در نظر بگیرید که پاسخ نسبتا کوتاه صد کیلوبایتی (یک صفحه وب با متن یا یک تصویر) ارائه می‌کند. بارگذاری این صفحه می‌تواند ظرف کسری از ثانیه انجام شود اما برای کاربری با پهنای باند ۸۰ kbps بارگذاری این صفحه ده ثانیه طول خواهد کشید. پس این سرور وب با سرعت نسبتا زیادی می‌تواند صدکیلوبایت محتوا را گرفته، سپس برای ده ثانیه به‌کندی آن محتوا را قبل از آزادسازی اتصال به کاربر بفرستد. حال تصور کنید شما هزار کاربر دارید که به‌طور همزمان متصل هستند و محتوای یکسانی را درخواست کرده‌اند. اگر تنها یک مگابایت حافظه اضافی برای هر کاربر تخصیص یابد، تقریبا یک‌گیگابایت حافظه برای ارائه سرویس به تنها هزار کاربر با درخواست صد‌کیلوبایت محتوا نیاز است. یک سرور وب معمولی که بر پایه آپاچی باشد، باید بیش از یک مگابایت حافظه اضافی برای هر اتصال تخصیص دهد. اگرچه شرایط ارسال محتوا برای یک اتصال کند، می‌تواند به‌وسیله افزایش اندازه بافرهای سوکت کرنل سیستم‌عامل بهبود یابد، ولی این کار یک راه‌حل کلی نیست و می‌تواند اثرات جانبی زیادی در پی داشته باشد.

نقش NginX در همزمانی

با وجود اتصال‌های مداوم و پایدار، مشکل کنترل همزمانی بیش از پیش نمایان می‌ شود زیرا برای جلوگیری از تاخیر به‌ وجود آمده به علت سازماندهی اتصال‌ های جدید HTTP، ارتباط کاربران نباید قطع شود و برای هر کاربر متصل، میزان خاصی از حافظه به‌ وسیله سرور وب تخصیص پیدا می‌ کند.

در نتیجه برای کنترل حجم کاری افزوده شده مرتبط با افزایش مخاطبان و افزایش تعداد کاربران همزمان، یک وب‌ سایت باید بر پایه تعدادی از بلاک‌ های موثر باشد. هر چند بخش‌ های دیگر مانند سخت‌ افزار، ظرفیت شبکه، نرم‌افزار و معماری ذخیره داده‌ ها نیز مهم هستند، اما نرم‌ افزار وب‌ سرور است که اتصال‌ های کاربران را تائید و پردازش می‌ کند، بنابراین سرور وب باید بتواند به‌صورت غیرخطی و براساس افزایش تعداد درخواست‌ها درهرثانیه و اتصال‌های همزمان تغییر کند. احتمالا تا اینجای کار متوجه شده باشید که علت روند رشد بالای NginX چیست و چرا این اتفاق افتاده است. NginX توانست نیازهایی را که مبتنی بر ایت همزمانی بود به خوبی پشت سر بگذارد و به آنها پاسخگو باشد.

 

مزایای استفاده از NginX چیست

تا اینجای کار در مورد این موضوع که مزایای NginX چیست کم و بیش مطالبی را ارائه داده ایم. اگر بخواهیم به صورت تیتر وار و خلاصه بگوییم که مزایای NginX چیست و استفاده از آن چه فوایدی برای ما خواهد داشت میتوان به این موارد اشاره کرد:

  1. سرعت بالا(2.5 برابر سریعتر از وب سرور آپاچی)
  2. همزمانی در پاسخ به درخوست ها
  3. تقسیم بار و لود بالانس به صورت کاملا اصولی و کاربردی
  4. انعطاف پذیری خوب برای فایل های ایستا و پویا
  5. بازدهی فوق العاده در کار با ایمیل
  6. همگامی خوب با سرویس های استریمینگ

و موراد دیگر که در ادامه به بررسی و معرفی آنها خواهیم پرداخت.

مزایای NginX

 

دیگر فواید nginx

کنترل همزمانی بالا با بهره‌وری و تاثیرپذیری بالا از فواید مهم به‌کارگیری انجین‌ایکس بوده است، ولی این سرور وب، فواید جالب دیگری نیز دارد. در چند سال گذشته، معماری‌های وب، ایده تجزیه و جداسازی زیرساخت نرم‌افزاری‌ شان از سرور وب را در پیش گرفته‌ اند؛ همانند آنچه قبلا در وب‌ سایت‌ های مبتنی بر Linux، MySQL، PHP،Python  یا Perl، وجود داشت.

اگر بخواهیم بگوییم که در بین وب سرور های مختلف، علت مناسب بودن NginX چیست، میتوانیم بگوییم که قابلیت‌های کلیدی مورد نیاز برای کنترل همزمانی، پردازش تاخیر، لایه امن سوکت‌ها یا همان SSL، محتوای ایستا، فشرده‌ سازی و ذخیره در حافظه نهان، از‌ بین‌ بردن اتصال‌ ها و درخواست‌ های غیر ضروری و حتی جریان HTTP رسانه از لایه کاربردی به لایه موثر تر سرور وب را ارائه می‌ کند. همچنین امکان یکپارچه‌ سازی مستقیم با راه‌ حل‌ های بدون SQL یا NoSQL مانند memcached‌/‌Redis را برای بالا بردن کارایی هنگام ارائه سرویس به تعداد زیادی از کاربران همزمان فراهم می‌ سازد.

 

شرایط به کارگیری NginX چیست

با وجود کیت‌ ها و زبان‌ های برنامه‌ نویسی جدید توسعه، شرکت‌ های بیشتری اقدام به تغییر نحوه توسعه و به‌کارگیری برنامه‌ های کاربردی خود کردند و انجین‌ ایکس به یکی از اصلی‌ ترین اجزای این تغییرات تبدیل شد که توانست به بسیاری از شرکت‌ ها در جهت توسعه سریع سرویس‌ های وب‌ شان کمک کند. خیلی از شرکت ها و کسب و کارهایی که با شرایط ساختاری NginX سازگار هستند در حال استفاده از این وب سرور هستند و شما نیز میتوناید براحتی از آن استفاده کنید. در ادامه در مورد اینکه ساختار NginX چیست با هم صحبت خواهیم کرد.

 

ساختار NginX چیست

اولین خط‌ های انجین‌ ایکس در سال ۲۰۰۲ نوشته شد و سال ۲۰۰۴ به‌ عرضه عمومی رسید. تعداد کاربران انجین ایکس در حال افزایش است که این مساله باعث افزایش ایده‌ های مشارکتی، خطا های گزارش‌ شده، پیشنهاد ها و نظارت‌ ها شده است. اساس کد انجین‌ ایکس مختص به خودش است که به‌ صورت کامل و از ابتدا با زبان برنامه‌ نویسی C نوشته شده است. انجین ایکس به بسیاری از معماری‌ ها و سیستم‌ عامل‌ها مانند لینوکس، ویندوز،Mac OS  FreeBSD و نفوذ کرده است. این سرور وب، با داشتن کتابخانه‌ های خود از ماژول‌ های استاندارد کتابخانه‌ ای C استفاده زیادی نمی‌ کند.

ساختار NginX

اگرچه انجین ایکس در محیط ویندوز هم کار می‌کند، اما نسخه ویندوزی آن بیشتر نمایش است تا سرویس‌ وب مناسب برای ویندوز. محدودیت‌ های خاصی که در انجین‌ ایکس و معماری کرنل ویندوز وجود دارد، موجب می‌ شود انجین ایکس در همه حالات بخوبی کار نکند. مشکلات شناخته‌ شده نسخه ویندوزی انجین‌ ایکس مواردی چون پشتیبانی از تعداد کمتری اتصال‌ های همزمان، بهره‌ وری پایین‌ تر، ذخیره نکردن در حافظه نهان و نبود سیاست‌ های لازم برای مدیریت پهنای باند است.

 

نتیجه گیری

در این مقاله در مورد این موارد که NginX چیست و چه کاری را برای ما انجام خواهد داد، مزایای NginX چیست و از چه قابلیت هایی پشتیبانی می کند، موراد مربوط به همزمانی و اینکه چرا NginX به یکی از محبوب ترین وب سرور های جهان تبدیل شده است با هم صحبت کردیم. به طور کلی اگر میخواهید یک وب سرور ایده آل را برای خود انتخاب کنید، NginX گزینه ای مناسب خواهد بود. البته مشکلاتی در کارکرد با ویندوز وجود دارد که قابل رفع بوده و خود مایکروسافت نیز در حال حاضر از این وب سرور استفاده می کند. نکته ای که در مورد استفاده از NginX حائز اهمیت است این است که این وب سرور برای وردپرس مناسب نیست و می تواند با افزونه های شما تداخل ایجاد کند، پس رد صورتی که می خواهد یک سایت وردپرسی خوب و روان داشته باشید لایت اسپید برای شما گزینه ای بهتر خواهد بود.

کانفیگ MySQL و معرفی پارامترها

پایگاه داده را می توان یکی از اصلی ترین عناصر برای ایجاد یک برنامه کامپیوتری، یک برنامه تحت وب و همینطور یک سایت اینترنتی معرفی نمود. یکی از بهترین و پرکاربردترین پایگاه داده هایی که میتوانید برای موارد مختلف از آن استفاده کنید MySQL نام دارد. در این مقاله قصد داریم تا با معرفی مختصر این پایگاه داده به ارائه توضیحات کاملی در مورد کانفیگ MySQL و همینطور پارامتر های آن بپردازیم.

 

معرفی MySQL

MySQL یک برنامه مدیریت پایگاه داده رابطه ای منبع باز محبوب است. این برنامه بخشی از LAMP Stack که متشکل از برنامه های Linux ،Apache ،MySQL و PHP است می باشد، که میتواند روی هاست لینوکس و یا سرور مجازی پیاده سازی شود. ای مجموعه برنامه ها یک پشته نرم افزاری هستند که مسئولیت تامین برنامه های مورد نیاز برای پاسخ به درخواست های وارد شده و خارج شده از سایت را بر عهده دارند، و در واقع قرار است که یک وب سرور را برای شما تشکیل دهند.

MySQL بر اساس زبان جستجوی ساختار یافته (SQL) می تواند در اکثر سیستم عامل ها اجرا شود و عمدتا برای برنامه های تحت وب استفاده می شود. این پایگاه داده به زبان C و C ++ نوشته شده است. پایگاه داده MySQL گسترده است و زمینه های زیادی برای بهینه سازی دارد و همچنین تغییر عملکرد مناسبی دارد. برخی از تغییرات را می توان به صورت پویا انجام داد، و برخی دیگر نیاز به راه اندازی مجدد سرور دارند. نصب و کانفیگ MySQL با پیکربندی پیش فرض بسیار ساده است.

 

کانفیگ MySQL و ایمن سازی

نصب جدید MySQL شما با یک اسکریپت امنیتی برای سهولت در تنظیمات امنیتی فراهم شده است. اسکریپت را با دستور ترمینال زیر راه اندازی می شود :

sudo mysql_secure_installation

این سیستم از شما درخواست می کند که رمز عبور پیش فرض root را وارد کنید. رمز عبوری را که قبلاً بازیابی کرده اید وارد کنید. بعد، سیستم به شما می گوید که گذرواژه منقضی شده است و از شما می خواهد رمز جدیدی وارد کنید. یک رمز ورود جدید وارد کنید، آن را یادداشت کنید ، سپس Enter را فشار دهید. سیستم قدرت رمز عبور شما را ارزیابی می کند و از شما می پرسد آیا می خواهید رمز عبور جدید و قوی تری وارد کنید. اگر از قدرت رمز عبور خود راضی هستید، کلید Space را فشار دهید. برای تجدید نظر در گذرواژه خود، Y را فشار دهید.

نصب MySQL

اسکریپت Secure Installation ادامه خواهد یافت ، و شما می توانید با خیال راحت Y را به بقیه اعلان ها پاسخ می دهید ، که شامل موارد زیر است:

  • کاربران ناشناس را حذف کنید
  • ورود به سیستم از راه دور را از بین ببرید
  • حذف پایگاه داده آزمون
  • جداول امتیاز را بارگیری مجدد کنید

 

متغیرهای سیستم (System Variables)

کانفیگ MySQL متغیرهای زیادی دارد که می توانید تغییر دهید. برخی از متغیرها پویا هستند. به این معنی که می توان آنها را با استفاده از دستور SET تنظیم کرد. بعد از اینکه سرور در پرونده کانفیگ MySQL تنظیم شد (بعنوان مثال /etc/my.cnf و غیره / mysql / my.cnf)، دیگر به سرور نیاز دارید. با این حال، ما موارد عمومی را که کاملاً معمول است تنظیم می کنیم تا بهینه سازی سرور را انجام دهیم.

 

مرتب کردن_ اندازه_بافر (sort_buffer_size)

این متغیر در کانفیگ MySQL، اندازه بافر پرونده شما را کنترل می کند. به این معنی که هر زمان که پرس و جو نیاز به مرتب سازی ردیف ها دارد ، از مقدار این متغیر برای محدود کردن اندازه مورد نیاز استفاده می شود.

توجه داشته باشید که این متغیر به ازای هر per-query پردازش می شود (یا به ازای هر اتصال) ، به این معنی که وقتی مقدار این متغیر را بالاتر قرار می دهید و اگر چندین اتصال داشته باشید که به مرتب سازی ردیف های خود نیاز دارید ، حافظه اصطلاحا گرسنه (hungry) خواهد بود.

با این حال، با بررسی متغیر وضعیت جهانی Sort_merge_passes می توانید نیازهای خود را کنترل کنید. اگر این مقدار زیاد است، باید مقدار متغیر سیستم sort_buffer_size را افزایش دهید. در غیر این صورت ، آن را به حد متوسطی که نیاز دارید برسانید. اگر این مورد را خیلی کم قرار دهید یا اگر پرس و جوهای بزرگی برای پردازش دارید، اثر مرتب سازی ردیف های شما ممکن است کندتر از حد انتظار باشد. زیرا داده ها به طور تصادفی و با انجام غواصی دیسک بازیابی می شوند. این مورد می تواند باعث تخریب عملکرد شود. با این حال ، بهتر است درخواست های خود را برطرف کنید. در غیر این صورت ، اگر برنامه شما برای جلب درخواستهای بزرگ طراحی شده باشد و به مرتب سازی نیاز دارد ، استفاده از ابزارهایی که مانند Redis که حافظه پنهان پرس و جو را کنترل می کنند کارآمد است.

در کانفیگ MySQL ورژن 8.0 به طور پیش فرض، مقدار فعلی تنظیم شده این متغیر 256 KiB است. بر این اساس فقط درصورتی که کوئری هایی داشته باشید که به شدت از انواع استفاده می کنند یا تماس می گیرند، میتوانید مجددا در کانفیگ MySQL مقدار این متفیر را بالا ببرید.

مرتب کردن بافر

read_buffer_size

در راهنمای ارائه شده برای کانفیگ MySQL ذکر شده است که برای هر درخواست که اسکن متوالی یک جدول را انجام می دهد، یک بافر خواندن اختصاص می دهد. متغیر سیستم read_buffer_size اندازه بافر را تعیین می کند. برای MyISAM نیز مفید است ، اما این متغیر بر روی تمام موتورهای ذخیره سازی نیز تأثیر می گذارد. برای جداول MEMORY ، برای تعیین اندازه بلوک حافظه استفاده می شود.

اساساً، هر موضوعی که اسکن متوالی جدول MyISAM را انجام می دهد، برای هر جدولی که اسکن می کند یک بافر به این اندازه (در بایت) اختصاص می دهد. این برای همه موتورهای ذخیره سازی (که شامل InnoDB است) نیز اعمال می شود.

بنابراین برای کوئری هایی که با استفاده از ORDER BY ردیف ها را مرتب می کنند و نمایه های آن را در یک پرونده موقت ذخیره می کنند، مفید است. اگر اسکن های پی در پی زیادی انجام می دهید، برای کانفیگ MySQL به صورت انبوه وارد جداول پارتیشن شوید، نتایج ذخیره سازی جستجوهای تو در تو را ذخیره کنید، سپس مقدار آن را افزایش دهید. مقدار این متغیر باید مضربی از 4KB باشد. اگر روی مقداری تنظیم شود که مضربی از 4KB نباشد ، مقدار آن به نزدیکترین مضرب 4KB گرد می شود. توجه داشته باشید که تنظیم این مقدار به مقدار بیشتر، قسمت بزرگی از حافظه سرور شما را مصرف خواهد کرد. پیشنهاد می کنیم بدون معیارگذاری و نظارت مناسب بر محیط خود از این موارد در کانفیگ MySQL استفاده نکنید.

 

read_rnd_buffer_size

این متغیر مربوط به خواندن ردیف ها از جدول MyISAM به ترتیب مرتب شده پس از یک عمل مرتب سازی کلید است. برای جلوگیری از جستجوی دیسک ، ردیف ها از طریق این بافر خوانده می شوند.

این مستندات می گوید، هنگام خواندن ردیف ها به ترتیب دلخواه یا از جدول MyISAM به ترتیب مرتب شده پس از عمل مرتب سازی کلید ، ردیف ها از طریق این بافر خوانده می شوند (و از طریق این اندازه بافر تعیین می شوند) تا از جستجوی دیسک جلوگیری شود. تنظیم متغیر روی مقدار زیاد می تواند عملکرد ORDER BY را تا حد زیادی بهبود بخشد. با این حال ، این یک بافر اختصاص یافته برای هر مشتری است.

بنابراین شما نباید متغیر جهانی را روی مقدار زیادی تنظیم کنید. درعوض، متغیر جلسه را فقط از داخل آن کلاینت هایی که نیاز به اجرای کوئری های بزرگ دارند تغییر دهید. با این حال ، باید توجه داشته باشید که این مورد در مورد MariaDB صدق نمی کند، به خصوص هنگام استفاده از MRR. MariaDB از mrr_buffer_size در حالی که MySQL از read_buffer_size read_rnd_buffer_size استفاده می کند.

پارامتر اندازه بافر

join_buffer_size

در کانفیگ MySQL این مقدار به طور پیش فرض ، مقدار 256K است. حداقل اندازه بافر که برای اسکن های شاخص ساده ، اسکن های شاخص دامنه و اتصالات استفاده می شود که از شاخص ها استفاده نمی کنند و بنابراین اسکن های جدول کامل را انجام می دهند.

همچنین این مقدار توسط بهینه سازی BKA (که به طور پیش فرض غیرفعال است) استفاده می شود. شما می توانید ارزش آن را افزایش دهید تا در صورت عدم امکان اضافه کردن فهرست ها ، پیوستن کامل سریعتر داشته باشید. اگر مقدار این متغیر را خیلی زیاد تنظیم کنید، ممکن است کانفیگ MySQL شما دچار مشکلاتی مانند Caveat شود. به یاد داشته باشید که برای هر اتصال کامل بین دو جدول یک بافر پیوستن اختصاص داده شده است. برای پیوستن پیچیده بین چندین جدول که از نمایه ها برای آنها استفاده نشده است ، بافرهای اتصال چندگانه وجود دارند.

 

max_heap_table_size

این حداکثر اندازه در بایت برای جداول MEMORY ایجاد شده توسط کاربر مجاز به رشد است. وقتی برنامه شما با جداول موتور ذخیره سازی MEMORY سر و کار دارد، این متغیر بسیار مفید است. تنظیم متغیر در حالی که سرور فعال است ، تاثیری در جداول موجود ندارد.مگر اینکه آنها دوباره از نو ساخته شوند یا تغییر داده شوند. کوچکتر از max_heap_table_size و tmp_table_size نیز جداول داخلی حافظه را محدود می کند.

این متغیر همچنین با tmp_table_size در ارتباط است تا اندازه جداول داخلی در حافظه را محدود کند (این تفاوت با جداول ایجاد شده به طور صریح موتور = MEMORY دارد زیرا فقط حداکثر max_heap_table_size را اعمال می کند) ، هر کدام از کوچکترها بین این دو اعمال می شود.

 

tmp_table_size

این متغیر از کانفیگ MySQL بزرگترین اندازه برای جداول موقت در حافظه (نه جداول MEMORY) است که اگر از max_heap_table_size کوچکتر باشد، حد پایینی اعمال می شود.

اگر یک جدول موقتی در حافظه بیش از حد مجاز باشد ، MySQL آن را به طور خودکار به یک جدول موقتی روی دیسک تبدیل می کند. اگر تعداد زیادی پرس و جو پیشرفته GROUP BY انجام می دهید و فضای حافظه زیادی دارید، مقدار tmp_table_size (و max_heap_table_size در صورت لزوم) را افزایش دهید.

شما می توانید با مقایسه مقادیر متغیرهای Created_tmp_disk_table و Created_tmp_table تعداد جداول موقتی داخلی روی دیسک ایجاد شده را با تعداد جداول داخلی موقتی داخلی مقایسه کنید.

اندازه جدول ها

table_open_cache

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

اگر چه افزایش این مقدار در زمان کانفیگ MySQL تعداد توصیف کننده های فایل مورد نیاز mysqld را افزایش می دهد، بنابراین شما همچنین می توانید مقدار open_files_limit خود را بررسی کنید یا بررسی کنید که SOFT و HARD در سیستم عامل * nix شما چقدر بزرگ است.

شما می توانید با بررسی متغیر وضعیت Opened_tables وضعیت این مورد را افزایش دهید یا نیازی به افزایش حافظه پنهان جدول نیست. اگر مقدار Open_table ها زیاد است و شما اغلب از FLUSH TABLES استفاده نمی کنید (که فقط مجبور به بسته شدن و بازگشایی جداول است)، باید مقدار متغیر table_open_cache را افزایش دهید.

همینطور اگر در کانفیگ MySQL مقدار کمی را برای table_open_cache در نظر گرفته باشید و تعداد زیادی از جداول مرتباً قابل دسترسی باشند، این می تواند بر عملکرد سرور شما تأثیر بگذارد. اگر ورودی های زیادی را در لیست فرآیند MySQL با وضعیت “جداول باز کردن” یا “جدول های بسته شدن” مشاهده کردید ، وقت آن است که مقدار این متغیر را تنظیم کنید. در ClusterControl ، می توانید این مورد را در بخش Dashboards -> Table Open Cache Status یا Dashboards -> Open Tables بررسی کنید. برای اطلاعات بیشتر می توانید آن را اینجا بررسی کنید.

 

table_open_cache_instances

تنظیم این متغیر در کانفیگ MySQL به بهبود مقیاس پذیری و البته عملکردی کمک می کند که اختلاف بین جلسات را کاهش می دهد. مقداری که در کانفیگ MySQL تنظیم کرده اید تعداد نمونه های حافظه نهان جداول باز را محدود می کند. حافظه پنهان جداول باز را می توان به چندین نمونه حافظه پنهان کوچکتر از اندازه size_open / cache / table_open_cache_pandition کرد.

برای دسترسی به عبارات DML یک جلسه باید فقط یک نمونه را قفل کند. این دسترسی حافظه پنهان را در میان نمونه ها تقسیم می کند، و عملکردهای بالاتر را برای عملیاتی که از حافظه پنهان استفاده می کنند، درصورتی که بسیاری از جلسات به جداول دسترسی دارن ، امکان پذیر می کند. (دستورات DDL هنوز به قفل کردن حافظه پنهان کامل احتیاج دارند ، اما تکرار چنین عباراتی بسیار کمتر از دستورات DML است.) مقدار 8 یا 16 در سیستم هایی که به طور معمول از 16 هسته یا بیشتر استفاده می کنند ، توصیه می شود.

 

table_definition_cache

این متغیر قابل تغییر در کانفیگ MySQL تعاریف جدول حافظه پنهان معنی می شود. یعنی در واقع جایی است که CREATE TABLE برای سرعت بخشیدن به باز شدن جداول و فقط یک ورودی در هر جدول ذخیره می شود. منطقی است که اگر تعداد جداول زیادی دارید, مقدار این متغیر را افزایش دهید. حافظه پنهان جدول ، فضای کمتری را اشغال می کند و برخلاف حافظه پنهان معمولی ، از توصیفگر پرونده استفاده نمی کند.

بنابراین اگر تعداد جداول بیشتری نسبت به جدول پیش فرض داشته باشید ، منطقی است که ارزش آن را در زمان کانفیگ MySQL افزایش دهید. توجه داشته باشید که با InnoDB ، این متغیر به عنوان یک محدودیت نرم در تعداد نمونه های جدول باز برای حافظه پنهان دیکشنری داده استفاده می شود.

وقتی در کانفیگ MySQL این مقدار را تعیین می کنید باید در نظر داشته باشید، مکانیزم LRU هنگامی که از مقدار فعلی این متغیر بیشتر شود، استفاده خواهد کرد. این محدودیت به آدرس هایی کمک می کند که در آنها مقدار قابل توجهی از حافظه برای ذخیره حافظه پنهان نمونه های جدول مورد استفاده تا شروع مجدد سرور بعدی استفاده شود.

از این رو ، نمونه های جدول والدین و فرزند با روابط خارجی با کلید در لیست LRU قرار ندارند و می توانند بالاتر از حد تعریف شده توسط cache table_definition_ را تحمیل کنند و در حین LRU در معرض تخلیه حافظه نیستند. علاوه بر این، table_definition_cache برای تعداد InnoDB فایلهای جداول جدول که می تواند همزمان باز شود حد محدودی را تعیین می کند که همچنین توسط innodb_open_files کنترل می شود و در واقع ، اگر هر دو تنظیم شده باشند ، از بالاترین تنظیمات استفاده می شود .

اگر هیچ یک از متغیرها تنظیم نشده باشد ، از table_definition_cache که مقدار پیش فرض بالاتری دارد استفاده می شود. اگر تعداد دستگیره های پرونده های باز شده از حد مجاز بیش از حد تعریف شده توسط table_definition_cache یا innodb_open_files باشد ، مکانیزم LRU لیست LRU پرونده tablespace را برای پرونده هایی جستجو می کند که کاملاً فلاش شده اند و در حال حاضر تمدید نمی شوند.

 

max_allowed_packet

این متغیر کانفیگ MySQL نشان دهنده حداکثر اندازه اتصال هر پرسش یا ردیف SQL است. این مقدار آخرین بار در MySQL 5.6 افزایش یافته است. اما در MySQL 8.0 (حداقل در تاریخ 8.0.3)، مقدار پیش فرض فعلی 64 MiB است. اگر ردیف های بزرگ BLOB دارید که باید بیرون کشیده شوند (یا بخوانید) ، ممکن است این تنظیم را انجام دهید، در غیر این صورت می توانید این تنظیمات پیش فرض را با 8.0 بگذارید اما در نسخه های قدیمی ، پیش فرض 4 MiB است بنابراین در صورت وجود می توانید از آن مراقبت کنید با خطای ER_NET_PACKET_TOO_LARGE روبرو شوید. بزرگترین بسته ممکن که به سرور یا سرویس گیرنده MySQL 8.0 یا از طریق آن قابل انتقال است ، 1 گیگابایت است.

بیشترین بسته های قابل انتقال

skip_name_resolve

با استفاده از این متغیر کانفیگ MySQL، سرور MySQL ارتباطات ورودی را با وضوح نام میزبان مدیریت می کند. به طور پیش فرض، MySQL هیچ رزولوشن نام میزبان را غیرفعال نمی کند، به این معنی که جستجوی DNS را انجام می دهد و به طور تصادفی، اگر DNS کند باشد، می تواند دلیل عملکرد افتضاح پایگاه داده شما باشد. اگر نیازی به وضوح DNS ندارید، این مورد را در زمان کانفیگ MySQL روشن کنید و از غیرفعال کردن عملکرد MySQL خود در غیرفعال شدن استفاده کنید. توجه داشته باشید که این متغیر پویا نیست، بنابراین اگر این مورد را در پرونده پیکربندی MySQL خود تنظیم کنید، راه اندازی مجدد سرور لازم است. شما می توانید به صورت اختیاری mysqld daemon را راه اندازی کنید، برای فعال کردن این گزینه –skip-name -olution را رد کنید.

 

max_connections

این متغیر کانفیگ MySQL ، تعداد اتصالات مجاز برای سرور MySQL شما است. اگر در MySQL “اتصالات بیش از حد” متوجه خطا شوید، ممکن است تنظیم آن را بالاتر انجام دهید. به طور پیش فرض، مقدار 151 به ویژه در یک پایگاه داده تولید کافی نیست و با توجه به اینکه منابع سرور بیشتری دارید (منابع سرور خود را هدر ندهید، مخصوصاً اگر یک سرور اختصاصی MySQL باشد). با این حال، شما باید توصیف کننده پرونده به اندازه کافی داشته باشید در غیر این صورت تعداد آنها تمام می شود. در این صورت، تنظیم SOFT و HARD محدودیت سیستم عامل * nix خود را در نظر بگیرید و مقدار open_files_limit را در MySQL بالاتر قرار دهید (5000 حد پیش فرض است). در نظر داشته باشید که بسیار شایع است که برنامه ارتباطات خود را به درستی به پایگاه داده نمی بندد، و تنظیم حداکثر ارتباطات حداکثر می تواند باعث عدم پاسخگویی یا بار زیاد سرور شما شود. استفاده از یک اتصال اتصال در سطح برنامه می تواند به حل مسئله در اینجا کمک کند.

 

thread_cache_size

این متغیر  کانفیگ MySQL نشان دهنده حافظه پنهان برای جلوگیری از ایجاد نخ بیش از حد است. هنگامی که مشتری قطع ارتباط می شود ، اگر تعداد رشته های کوچکتر از thread_cache_s در آنجا وجود داشته باشد، رشته های مشتری در حافظه پنهان قرار می گیرند. درخواست های رشته ها با استفاده مجدد از نخ های گرفته شده از حافظه پنهان در صورت امکان، برآورده می شوند و فقط در صورت خالی بودن حافظه نهان، یک موضوع جدید ایجاد می شود.

اگر اتصال جدید زیادی داشته باشید می توانید این متغیر را برای بهبود عملکرد افزایش دهید. به طور معمول، اگر پیاده سازی موضوعی خوبی داشته باشید ، این بهبود عملکرد قابل توجهی ندارد. با این حال ، اگر سرور شما صدها اتصال در ثانیه مشاهده می کند، باید مقدار thread_cache_size را در کانفیگ MySQL به اندازه کافی زیاد تنظیم کنید تا در بیشتر اتصالات جدید از نخ های ذخیره شده استفاده شود. با بررسی تفاوت بین متغیرهای وضعیت اتصال و Threads_created، می توانید حافظه پنهان موضوع را کارآمد ببینید. با استفاده از فرمول ذکر شده در اسناد ، 8+ (حداکثر_ اتصالات / 100) به اندازه کافی خوب است.

 

query_cache_size

برای برخی از تنظیمات ، این متغیر قابل تنظیم در کانفیگ MySQL بدترین دشمن آنها خواهد بود. برای برخی از سیستم هایی که بار زیادی را تجربه می کنند و مشغول خواندن زیاد هستند، این متغیر سیستم شما را خسته می کند. مواردی وجود داشته که توسط Percona به خوبی مورد آزمایش قرار گرفته است. برای غیرفعال کردن این متغیر باید 0 به همراه query_cache_type = 0 تنظیم شود. خبر خوب درکانفیگ MySQL ورژن 8.0 این است که ، تیم MySQL پشتیبانی از این امر را متوقف کرده است، زیرا این متغیر می تواند باعث مشکلات عملکردی شود.

اگر شما در استفاده از حافظه پنهان پرس و جو کار می کنید ، پیشنهاد می کنیم برای کانفیگ MySQL از Redis یا ProxySQL استفاده کنید.

 

موتور ذخیره سازی – InnoDB

InnoDB یک موتور ذخیره سازی سازگار با ACID است که دارای ویژگی های مختلفی به همراه پشتیبانی از کلید خارجی است (Declarative Referential Integrity). این گزینه چیزهای زیادی برای گفتن دارد اما متغیرهای خاصی را باید برای تنظیم در نظر بگیرید:

 

اندازه innodb_buffer_pool

این متغیر کانفیگ MySQL مانند یک بافر اصلی MyISAM عمل می کند اما چیزهای زیادی برای ارائه دارد. از آنجا که InnoDB بسیار به استخر بافر متکی است ، شما می خواهید این مقدار را معمولاً روی 70٪ -80٪ ​​حافظه سرور خود تنظیم کنید. همچنین مطلوب است که شما فضای حافظه بیشتری نسبت به مجموعه داده خود داشته باشید و مقدار بیشتری را برای بافر خود تنظیم کنید اما نه خیلی زیاد. در ClusterControl ، می توان با استفاده از داشبورد – – نمودارهای InnoDB -> نمودار صفحات استخر بافر InnoDB ، این را کنترل کرد. همچنین می توانید با استفاده از متغیرهای Innodb_buffer_pool_pages * این وضعیت را با SHOW GLOBAL STATUS کنترل کنید.

 

innodb_buffer_pool_intiles

برای بار کاری همزمانی شما ، تنظیم این متغیر می تواند همزمان سازی را بهبود بخشد و از اختلاف نظر به عنوان رشته های مختلف خواندن / نوشتن در صفحات ذخیره شده کاسته شود. حداقل مقدار innodb_buffer_pool باید بین 1 (حداقل) و 64 (حداکثر) باشد.

هر صفحه ای که در استخر بافر ذخیره یا خوانده می شود ، با استفاده از یک تابع hash کردن به طور تصادفی به یکی از موارد بافر اختصاص می یابد. هر استخر بافر لیست های رایگان ، لیست های فلاش ، LRU و سایر ساختارهای داده متصل به یک بافر را مدیریت می کند و توسط mutex استخر بافر خود محافظت می شود. توجه داشته باشید که این گزینه فقط زمانی اعمال می شود که innodb_buffer_pool_size> = 1GiB و اندازه آن بین نمونه های بافر تقسیم شود.

موتور InnoDB

innodb_log_file_size

این متغیر پرونده ورود به سیستم در یک گروه ورود به سیستم است. اندازه ترکیبی پرونده های ورود به سیستم نمی تواند از حداکثر مقدار کمی کمتر از 512 گیگابایت باشد. اندازه پرونده بزرگتر برای عملکرد بهتر است ، اما دارای یک اشکال (قابل توجه) است که باید نگران آن باشید:

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

برای توضیح بیشتر ، مقدار بزرگتر برای ثبت معاملات InnoDB مفید است و برای عملکرد نوشتن خوب و پایدار بسیار مهم است.

با این حال ، هنگامی که پایگاه داده شما غیر عادی خاموش شد (کرش کرد یا حذف شد ، یا عمدی یا تصادفی) ، روند بازیابی بسیار کند است. در حالت ایده آل ، شما می توانید 1-2 گیگابایت تولید داشته باشید. اما مطمئناً می توانید این میزان را تنظیم کنید. محک زدن این تغییرات می تواند یک مزیت بزرگ برای دیدن عملکرد آن به ویژه در هنگام کرش کردن باشد.

 

innodb_log_buffer_size

برای ذخیره I/O دیسک ، InnoDB’s داده تغییر را در بافر ورود به سیستم lt می نویسد و از مقدار innodb_log_buffer_size با مقدار پیش فرض 8MiB استفاده می کند. این امر خصوصاً برای معاملات بزرگ مفید است زیرا نیازی به نوشتن گزارش تغییرات روی دیسک قبل از انجام معامله نیست. اگر ترافیک نوشتن شما خیلی زیاد است (درج ، حذف ، به روزرسانی) ، بافر باعث بزرگتر شدن ورودی / خروجی دیسک می شود.

 

innodb_flush_log_at_trx_commit

وقتی innodb_flush_log_at_trx_commit روی 1 تنظیم شود ، بافر ورود به سیستم در هر تراکنش متعهد به پرونده ورود به سیستم بر روی دیسک حذف می شود و حداکثر یکپارچگی داده را فراهم می کند ، اما تأثیر عملکردی نیز دارد. تنظیم آن بر روی 2 به این معنی است که بافر ورود به سیستم حافظه نهان پرونده سیستم عامل بر روی هر تعهد معامله قرار دارد. اگر بتوانید نیازهای ACID خود را کاهش دهید ، مفهوم 2 بهینه است و عملکرد را بهبود می بخشد ، و در صورت خرابی سیستم عامل قادر به از دست دادن معاملات برای یکی دو ثانیه آخر هستید.

 

innodb_thread_concurrency

با بهبود موتور InnoDB ، توصیه می شود به موتور اجازه دهید تا همزمانی را با نگه داشتن آن در مقدار پیش فرض (که صفر است) کنترل کند. اگر مشکلات همزمانی را مشاهده کردید ، می توانید این متغیر را تنظیم کنید. مقدار توصیه شده 2 برابر تعداد پردازنده ها به علاوه تعداد دیسک ها است. این متغیر پویا است یعنی می تواند بدون راه اندازی مجدد سرور MySQL تنظیم شود.

 

innodb_flush_method

این متغیر باید بارها آزمایش شود که بر اساس کدام سخت افزار بیشتر مناسب شما است. اگر از RAID با حافظه پنهان پشتیبان باتری استفاده می کنید ، DIRECT_IO به شما در کاهش فشار ورودی / خروجی کمک می کند. ورودی I / O مستقیم حافظه پنهان نیست بنابراین از ایجاد بافر مضاعف با بافر بافر و حافظه پنهان سیستم فایل جلوگیری می کند. اگر دیسک شما در SAN ذخیره شده باشد ، ممکن است O_DSYNC برای بار سنگین بار خوانده شده با عبارات بیشتر SELECT سریعتر باشد.

 

innodb_file_per_table

innodb_file_per_table به طور پیش فرض از MySQL 5.6 فعال است. این معمولاً توصیه می شود زیرا از داشتن یک قاشق غذاخوری مشترک بزرگ جلوگیری می کند و به شما امکان می دهد هنگام جدا کردن یا برش دادن میز ، فضای خود را پس بگیرید. Spaceaceace جداگانه همچنین برای طرح پشتیبان گیری جزئی Xtrabackup مزایایی دارد.

 

innodb_stats_on_metadata

با این کار می توان درصد صفحات کثیف را تحت کنترل داشت و قبل از پلاگین Innodb ، این تنها راه برای تنظیم برافروختگی بافر کثیف بود. با این حال ، من سرورهایی با 3٪ بافر کثیف دیده ام و آنها حداکثر سن بازرسی خود را دارند. روشی که باعث افزایش گرگرفتگی بافر کثیف می شود ، در زیر سیستم های با io بالا نیز مقیاس خوبی ندارد ، اما درصورتی که درصد صفحات کثیف بیش از این مقدار باشد ، در هر ثانیه برافروختگی بافر کثیف را در هر ثانیه دو برابر می کند.

متا دیتای InnoDB

innodb_io_capacity

این تنظیم ، علی رغم همه امیدهای بزرگ ما که به Innodb امکان استفاده بهتر از IO در همه عملیات را می دهد ، به سادگی میزان شستشوی صفحه کثیف در ثانیه (و سایر وظایف پس زمینه مانند پیش خواندن) را کنترل می کند. این را بزرگتر کنید ، هر ثانیه بیشتر می شوی. این سازگار نیست ، اگر بافرهای کثیف برای شستشو وجود داشته باشد ، به راحتی بسیاری از ثانیه ها را در هر ثانیه انجام می دهد. اگر حجم کاری کافی برای نوشتن داشته باشید ، بهینه سازی ادغام IO را از بین می برد (یعنی صفحات کثیف تقریباً بلافاصله سرخ می شوند ، در این صورت بدون ثبت تراکنش بهتر خواهیم بود). همچنین اگر این مورد را خیلی زیاد قرار دهید ، به سرعت می تواند داده ها را بخواند و در سیستم ثبت معاملات بنویسد.

 

innodb_write_io_threads

تعداد رشته هایی را که در حال نوشتن بر روی دیسک هستند کنترل می کند. مطمئن نیستم که اگر می توانید از AIO بومی لینوکس استفاده کنید ، چرا این هنوز هم مفید است. اینها همچنین می توانند توسط سیستم های پرونده ای که اجازه نوشتن موازی با همان پرونده را با بیش از یک موضوع نمی دهند (بخصوص اگر جداول نسبتاً کمی داشته باشید و یا از مکانهای جهانی استفاده کنید) بی فایده باشند.

 

innodb_adaptive_flushing

مشخص می کند که آیا میزان شستشوی صفحات کثیف در استخر بافر InnoDB بر اساس میزان کار به صورت پویا تنظیم شود. تنظیم سرعت شستشو به صورت پویا برای جلوگیری از انفجار فعالیت I / O در نظر گرفته شده است. این متغیر ، هنگامی که فعال است ، سعی می کند هوشمندانه در مورد هجوم بیشتر بر اساس تعداد صفحات کثیف و میزان رشد ثبت معاملات هوشمندانه عمل کند.

شست و شوی صفحات کثیف

innodb_dedicated_server

این متغیر در نسخه MySQL 8.0 جدید است که در سطح جهانی اعمال می شود و نیاز به راه اندازی مجدد MySQL دارد. زیرا یک متغیر پویا نیست. با این حال ، همانطور که در اسناد ذکر شده است ، این متغیر تنها در صورتی فعال است که MySQL شما روی یک سرور اختصاصی اجرا شود. در غیر این صورت ، این مورد را در یک میزبان مشترک فعال نکنید یا منابع سیستم را با برنامه های دیگر به اشتراک بگذارید.

هنگامی که این متغیر فعال باشد ، InnoDB یک پیکربندی خودکار برای مقدار حافظه شناسایی شده برای متغیرهای innodb_buffer_pool_size ، innodb_log_file_size ، innodb_flush_method انجام می دهد.

تنها نکته منفی این است که شما نمی توانید این امکان را داشته باشید که مقادیر مورد نظر خود را روی متغیرهای شناسایی شده ذکر شده اعمال کنید.

 

MyISAM

MyISAM موتور ذخیره سازی پیش فرض نسخه های سیستم مدیریت پایگاه داده رابطه ای MySQL قبل از نسخه 5.5 بود که در دسامبر 2009 منتشر شد.

 

key_buffer_size

InnoDB موتور ذخیره سازی پیش فرض اکنون MySQL است. پیش فرض key_buffer_size احتمالاً می تواند کاهش یابد مگر اینکه از MyISAM به عنوان بخشی از برنامه خود به طور مولد استفاده کنید (اما چه کسی اکنون از MyISAM در تولید استفاده می کند؟).

ما در اینجا پیشنهاد می کنیم اگر حافظه بزرگتری دارید 1٪ RAM یا 256 MiB را در ابتدا تنظیم کنید و حافظه باقیمانده را برای حافظه نهانگاه سیستم عامل و بافر InnoDB اختصاص دهید.

 

سایر مقررات عملکرد کانفیگ MySQL

slow_query_log

البته ، این متغیر به تقویت سرور MySQL شما کمک نمی کند. با این حال ، این متغیر می تواند به شما در تحلیل سوالات به کندی سرعت کمک کند. برای غیرفعال کردن ورود به سیستم می توان مقدار را روی 0 یا OFF تنظیم کرد.

برای فعال کردن آن روی 1 یا ON تنظیم کنید. مقدار پیش فرض بستگی به این دارد که گزینه –slow_query_log داده شود. مقصد خروجی ورود به سیستم توسط متغیر سیستم log_output کنترل می شود. اگر این مقدار NONE باشد ، حتی اگر log فعال باشد هیچ ورودی وارد نمی شود. با تنظیم متغیر slow_query_log_file می توانید نام پرونده یا مقصد پرونده ورود به سیستم را تنظیم کنید.

 

long_query_time

اگر پرس و جو بیش از این چند ثانیه طول بکشد ، سرور متغیر وضعیت Slow_queries را افزایش می دهد. اگر ثبت کند پرس و جو فعال باشد ، درخواست در پرونده ورود به سیستم کند پرس و جو وارد می شود.

این مقدار در زمان واقعی اندازه گیری می شود ، نه زمان پردازنده ، بنابراین ممکن است سوالی که در یک سیستم کم بارگیری در زیر آستانه است ، در بالای آستانه یک سیستم بارگیری شده زیاد باشد.

حداقل و مقدار پیش فرض long_query_time به ترتیب 0 و 10 است. همچنین توجه داشته باشید که اگر متغیر min_examined_row_limit> 0 تنظیم شود ، اگر تعداد ردیف های برگشتی کمتر از مقدار تعیین شده در min_examined_row_limit باشد ، نمایش داده ها از سیستم ثبت نمی شود.

MyISAM

sync_binlog

این متغیر کانفیگ MySQL کنترل می کند که MySQL هر چند وقت یکبار Binlog ها را بر روی دیسک همگام سازی می کند. به طور پیش فرض (> = 5.7.7) ، این مقدار 1 تنظیم شده است که به این معنی است که قبل از انجام معاملات با دیسک همگام سازی می شود. با این حال ، این متغیر به دلیل افزایش تعداد نوشتن ، تأثیر منفی بر عملکرد دارد.

اما این امن ترین تنظیم است اگر شما می خواهید ACID سازگاری بالا با slaves های شما داشته باشد. متناوباً ، اگر می خواهید همگام سازی دیسک را غیرفعال کنید و فقط به سیستم عامل اعتماد کنید تا گاه به گاه ورود باینری را به دیسک بکشید ، می توانید مقدار این متغیر را روی 0 تنظیم کنید. تنظیم آن بالاتر از 1 به این معنی است که binlog پس از جمع آوری N گروه های باینری log bin ، که N> 1 است ، با دیسک همگام می شود.

 

استخر بافر را ریخته و بازیابی کنید

این یک چیز معمول است که پایگاه داده تولید شما باید از یک شروع یا راه اندازی مجدد یه اصطلاح سرد و گرم شود. با ریختن حوضچه بافر فعلی قبل از شروع مجدد، محتویات موجود در استخر بافر را ذخیره می کند و پس از بالا آمدن ، محتویات را مجدداً در استخر بافر بارگیری می کند. بنابراین ، این امر از گرم شدن مجدد پایگاه داده شما جلوگیری می کند.توجه داشته باشید که این نسخه از سال 5.6 معرفی شده است اما Percona Server 5.5 آن را از قبل در دسترس داشت.

برای فعال کردن این ویژگی ، هر دو متغیر را تنظیم کنید :

innodb_buffer_pool_dump_at_shutdown = ON و innodb_buffer_pool_load_at_startup = ON

سخت افزار

اکنون در سال 2021 هستیم و بسیاری از پیشرفت های سخت افزاری جدید انجام شده است. به طور معمول ، هیچ اجباری وجود ندارد که MySQL به یک سخت افزار خاص نیاز داشته باشد. اما این بستگی به کاری دارد که شما از دیتابیس نیاز دارید.

برای CPU ، پردازنده های سریعتر با چند هسته برای MySQL حداقل در نسخه های جدید از 5.6 بهینه شدند. پردازنده های Xeon / Itanium اینتل  می توانند گران قیمت باشند. اما برای سیستم عامل های محاسباتی مقیاس پذیر و قابل اعتماد آزمایش شده اند.

معیارهایی وجود دارد که سالها پیش ساخته شده است. CPU مدرن می تواند فرکانس های خود را بر اساس سیاست های صرفه جویی در مصرف دما ، بار و سیستم عامل ، بالا و پایین کند.

با این حال ، این احتمال وجود دارد که تنظیمات CPU شما در سیستم عامل لینوکس روی یک تنظیم کننده دیگر تنظیم شود.

با انجام موارد زیر می توانید این مورد را بررسی کنید یا آن را با فرمان دهنده “عملکرد” ​​تنظیم کنید:

echo performance | sudo tee /sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_governor>

سخت افزار MySQL

نتیجه گیری

همانطور که دیدیم کانفیگ MySQL را می تونا به عنوان یکی از کارهای پیچیده معرفی نمود. در صورتی که شما نصب این پایگاه داده را با تنظیمات پیشفرض انجام دهید کار زیاید در پیش ندارید. اما شما نمیتوانید یک پایگاه داده بهینه داشته باشید. برای بهینه سازی این پایگاه داده ها باید کانفیگ MySQL را به صورت دستی انجام دهید. در این مقاله پارامتر های ضروری را با هم بررسی کردیم و دیدیم که برای اینکار لازم است چه مواردی را تغییر دهید.

راهنمای انتخاب و خرید سرور مجازی و اختصاصی مناسب

یکی از اصلیترین و مهمترین سرویس های هاستینگ که میتواند امکانات متعددی را از میزبانی یک سایت تا راه اندازی یک شبکه خصوصی به صورت VPN در اختیار شما قرار دهد، سرور های مجازی هستند. شما با استفاده از سرور های مجازی می توانید به قابلیت ها و سرویس های متعددی دست پیدا کنید. در صورتی که قصد خرید سرور مجازی ( VPS ) دارید این مقاله می تواند معیارهای انتخاب و خرید یک سرور مجازی مناسب را به شما معرفی نماید. قبل از ارائه معیارهای انتخاب یک سرور مجازی ، بهتر است یک تعریف کامل از سرور مجازی داشته باشیم.

 مطلب راهنمای انتخاب و خرید سرور مجازی مناسب در تاریخ یکم فروردین ماه بازنویسی و کامل بروزرسانی شد

 

سرور مجازی چیست؟

سرور مجازی یک سرور با منابع رم (RAM) ، سی پی یو (CPU) و هارد (HDD) کاملا مستقل می باشد که توسط نرم افزار مجازی ساز بر روی یک سرور اختصاصی ایجاد می شود ، در واقع یک سرور اختصاصی توسط نرم افزار مجازی ساز تبدیل به چندین سرور مجازی کاملا مستقل خواهد شد که هر کدام از سرورهای مجازی دارای منابع و سیستم عامل منحصر به فرد و مستقل می باشند.

 

پارامتر های انتخاب سرور مجازی مناسب

انتخاب سرور مجازی مناسب می تواند نقش بسیار مهمی در کیفیت لود وب سایت و یا پروژه تحت وب شما داشته باشد و همچنین در صورتی که در انتخاب سرور مجازی دقت کافی نشود ممکن است علیرغم ا­ینکه شما هزینه بالاتری نسبت به سرویس هاست برای خرید سرور مجازی پرداخت می نمایید کیفیت پایین تری حتی نسبت به یک هاست اشتراکی معمولی داشته باشید. قبل از خرید یک سرور مجازی باید هدف خود را از خرید سرور مجازی تعیین نمایید تا بر این اساس یک سرویس متناسب با نیازتان خریداری نمایید، در ادامه مواردی که در انتخاب سرور مجازی می تواند را برای شما موثر باشد توضیح داده خواهد شد.

 

1_ موقعیت مکانی سرور

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

سرور مجازی چیست

 

 

در چه مواردی سرور مجازی خارج از ایران خریداری کنید؟

  1. شما نیاز به استفاده از API و یا منابعی در پروژه خود دارید که در ایران فیلتر و یا از سمت سرویس دهنده خارجی دسترسی به آی پی های ایران محدود شده است.
  2. برای راه اندازی ربات تلگرام نیاز به سرور مجازی دارید .
  3. تمایل دارید در سرور مجازی خود به بازارهای مالی و یا پنل­های بانکی ارزی خود دسترسی داشته باشید و اتصال با آی­پی ایرانی باعث بلاک شدن اکانت شما می شود .
  4. اکثر مشتریان شما خارج از ایران هستند.
  5. درگاه های بانکی بین المللی نظیر پی پال (Paypal) استفاده می کنید .
  6. ترافیک یا پهنای باند مصرفی شما بالاست و نیاز به پروت آپلینک قدرتمند دارید و تمایل به پرداخت هزینه جهت خرید ترافیک اضافه ندارید .
  7. در چه مواردی توصیه می کنیم از سرور مجازی داخل ایران استفاده کنید؟
  8. پروژه شما یک وب­ سایت تجاری یا فروشگاهی با مشتریان ایرانی می­باشد
  9. سرعت لود اولیه کاربران داخل ایران برای شما مهم است
  10. نگران قطع اینترنت بین الملل و تاثیر آن بر کسب و کار خود هستید
  11. اکثر مشتریان شما داخل ایران هستند
  12. از درگاه­های بانک داخلی در پروژه خود استفاده نموده اید.
  13. داز وب سرویس یا API­ای استفاده می کنید که دسترسی آن خارج از ایران محدود شده است.
  14. البته پارامترهای انتخاب موقعیت سرور مجازی می تواند بسیار گسترده ­تر از موارد فوق باشد. ما به شما پیشنهاد می کنیم در صورتی که در انتخاب موقعیت سرور مجازی خود اطمینان ندارید با تیم مشاورین مارال هاست تماس بگیرید تا در این خصوص بهترین پیشنهاد را به شما ارائه نماییم.

 

2_ نوع هارد سرور مجازی

انتخاب هارد در خرید سرور مجازی یک فاکتور بسیار مهم است، در بسیاری از موارد، کندی و لود بالای سرور مجازی ناشی از  کندی و اختلال در هارد سرور مجازی می باشد که علت اصلی آن انتخاب نامناسب هارد با توجه به نوع پردازش ایجاد شده در سرور می باشد.

نوع هارد سرور مجازی

 

 اما نقش هارد در سرور مجازی چیست ؟

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

اگر نگاهی به عملیات پردازش در یک سرور بیاندازیم 3 قطعه اصلی ، CPU ، RAM و HDD فرایند یک پردازش را مدیریت می کنند ، اطلاعات ( داده ­های خام ) از هارد (HDD) به رم ارسال می شود ، رم به عنوان حافظه اصلی وظیفه انتقال اطلاعات از هارد به سی پی یو جهت پردازش و انتقال اطلاعات پردازش شده از CPU به هارد را دارد . در این میان با توجه به این که سرعت انتقال داده ها از رم به سی پی یو و از سی پی یو به رم بالاتر از سرعت انتقال اطلاعات بین رم و هارد دیسک است هر چه سرعت ورودی و خرجی I/O (Input/Output) یا سرعت خواندن و نوشتن در هارد دیسک شما بالاتر باشد، سرعت پردازش بالاتر و over load  سرور شما کمتر خواهد بود.

 

 معرفی تکنولوژی انواع هارد و ذخیره‌ساز

در حال حاضر هاردها و ذخیره سازهایی که به صورت تجاری در کامپیوترها ، سرورهای سخت افزاری و San Storage ها مورد استفاده قرار می­گیرد، شامل 3 نوع تکنولوژی با نام­های دیسک­های چرخشی با کانکتور SATA، دیسک های جامد یا SSD و یا حافظه های Full Flash با نام تجاری NVMe می باشد. اگر تنها پارامتر را سرعت خواندن و نوشتن در نظر بگیریم، هاردهای NVMe سریعترین سرعت I/O را دارند و تقریبا می توان سرعت I/O این ذخیره ساز را با سرعت رم برابر دانست ، پس از آن دیسک های جامد و یا همان SSD و در نهایت دیسک های چرخشی یا همان هارد ساتا می­توانند در رده دوم و سوم باشند .با توجه به تست­هایی که آزمایشگاه­های تست I/O بر روی این سه مدل ذخیره ساز انجام دادند سرعت یک هارد NVMe تا 30 برابر از هارد ساتا و تا 6 برابر سریعتر از سرعت خواندن و نوشتن هارد SSD می باشد .

تکنولوژی انواع هارد

 کدام هارد برای سرور مجازی شما مناسب تر است؟

 اگر پروژه شما بر روی سرور مجازی تراکنش­های بالای دیتابیس دارد، همزمان بازدید بالایی روی سرور دارید یا برای وب هاستینگ، سرور مجازی تهیه می کنید پیشنهاد ما استفاده از هاردهای NVMe در خرید سرور مجازی می باشد.

اگر برای نگهداری بکاپ، فایل و به صورت کلی فایل هاستینگ نیاز به سرور دارید یا هدف شما از خرید سرور تنها استفاده از امکانات اینترنت آن نظیر راه اندازی پراکسی سرور یا استفاده از اینترنت سرور جهت لود وب سایت و Browsing است، می توانید از هاردهای SSD یا ساتا استفاده نمایید.

 

3_ رم و سی پی یو

 

 خرید میزبان مناسب رم و سی پی یو

همانطور که در توضیحات انتخاب هارد به شما در خصوص فرایند عملیات یک پردازش توضیح دادیم، رم و سی پی یو دو رکن اصلی انجام یک پردازش می ­باشند، شما باید متناسب با میزان پردازشی که به واسطه­ ی اجرای پروژه ایجاد می کنید، رم و سی پی یو کافی برای سرور خود انتخاب نمایید، اگر سرور شما رم و سی پی یو کافی جهت انجام پردازش نداشته باشید ، سیستم عامل با صفی از پردازش­ها روبرو خواهد شد که در این حالت سرور over load خواهد شد و در نهایت پروژه­ی شما با کندی  یا قطعی کامل روبرو می شود.

 

 خرید سرور مجازی با رم و سی پی یو اختصاصی

یکی از مواردی که در خرید سرور مجازی یا انتخاب شرکت ارائه دهنده خدمات سرور مجازی می بایست درنظر بگیرید، اختصاصی بودن منابع خریداری شده است .همانطور که در ابتدای مقاله توضیح دادیم، یک سرور مجازی توسط مجازی ساز بر روی یک سرور اختصاصی ایجاد می گردد، در واقع نقش مجازی ­ساز جدا کردن بخشی از منابع سرور سخت افزاری و ایجاد یک سرور مجازی می باشد .

در مثالی عملی فرض کنید سرور اختصاصی که مجازی ­ساز بر روی آن ایجاد شده است دارای 100 گیگابایت رم و یک سی پی یو 20 هسته ای باشد. ارائه دهنده خدمات سرور مجازی با نصب یک مجازی ساز مثل ESXI بر روی این سخت افزار اقدام به ایجاد سرورهای مجازی می نماید ، طبق استانداردهای میزبانی سرور مجازی، حداکثر می توان 70 درصد منابع رم و سی پی یو سخت افزار سرور اختصاصی را جهت ایجاد سرور مجازی استفاده کرد، یعنی امکان واگذاری حداکثر 70 گیگابایت رم و 14 هسته سی پی یو روی این سخت افزار وجود دارد .

منابع سرور مجازی

اگر شما یک سرور با دو هسته سی پی یو و 10 گیگابایت رم خریداری نمایید، در حالتی که ارائه دهنده ­­­­­­­­­­­­­­­­ی سرور مجازی تضمین نماید منابع را به صورت کاملا اختصاصی به شما ارائه کند می بایست معادل کلاک تضمین شده و 10 گیگابایت واقعی رم را به شما ارائه نماید در این حالت روی این سخت افزار تنها امکان فروش 60 گیگابایت و 12 هسته سی پی یو دیگر را خواهد داشت و تنها امکان فروش 6 سرور دیگر با این مشخصات وجود خواهد داشت.

شما هزینه ای بابت منابع اختصاصی روی سرورمجازی خود پرداخت نموده اید حتی اگر هم از این منابع در عملیات پردازش داخل سرور استفاده ننمایید این منابع بر روی سخت افزار برای شما رزرو شده است و سرویس دهنده این منابع را بین دیگر سرورها به اشتراک نخواهد گذاشت( share نخواهد کرد).در این حالت در هر زمان کیفیت و پایداری سرور مجازی شما ثابت خواهد بود.

در برخی موارد سرویس دهندگان سرور مجازی به جای فروش 7 سرور مجازی با منابع ارائه شده، اقدام به ایجاد حتی تا 14 سرور مجازی با این منابع ( دو برابر مجاز ) و فروش آن­ها می­نمایند ، در این حالت همه 14 سرور دارای 10 گیگابایت رم و 2 هسته سرور مجموعا یعنی 140 گیگابایت رم و 28 هسته سی پی یو مجازی هستند .

 

 مشکل اصلی ارائه منابع اشتراکی در ارائه سرور مجازی چیست!؟

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

در مواردی سرویس دهنده به جهت جلوگیری از اختلال برای هر سرور سقف مصرف تعیین می کند، در مثال فرضی سرور مجازی که سرور دارای 10 گیگابایت رم ( 10240 مگابایت رم ) و دو هسته ( 5000 مگاهرتز ) سی پی یو می باشد ، سرویس دهنده از طریق مجازی ­ساز رم و سی پی یو سرور مجازی شما را نصف خواهد کرد ، یعنی شما داخل سرور 10 گیگابایت رم و 2 هسته سی پی یو مشاهده می کنید ولی عملا امکان استفاده از نصف این منابع را خواهید داشت و در این حالت سرور شما در هنگام پردازش دچار  کندی خواهد بود و شما در واقع تنها به 50 درصد این منابع دسترسی خواهید داشت.

به صورت کلی در حالتی که سرویس دهنده سرور مجازی منابع را به صورت اشتراکی به شما ارائه نماید در بازه هایی ممکن است سرور شما با ناپایداری روبرو شود که در این حالت به کیفیت اجرای پروژه شما بر روی سرور صدمه خواهد زد .

منابع اشتراکی در سرور مجازی

 

4_پورت سرور مجازی و آپلینک شبکه

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

سرویس دهندگان سرور های مجازی عموما یک حداقل مقدار سرعت شبکه را برای سرور های مجازی تضمین می نمایند که این سرعت بر اساس تعداد سرور های مجازی روی هر سرور سخت افزار و همچنین پورت آپلینک سرور سخت افزاری محاسبه می گردد .

توجه به تضمین پورت شبکه توسط سرویس دهنده در زمانی که شما برای مواردی مثل video stream و یا راه اندازی وب سایت های فایل هاستینگ مثل آپلود سنتر یا دانلود سنتر، قصد خرید سرور مجازی را دارید بسیار اهمیت دارد .

در حال حاضر مارال هاست برای سرورهای مجازی داخل ایران پورت 100 مگابایت و برای سرور های مجازی خارج از ایران پورت 1 گیگا بایت را تضمین می نماید.

 

5_ فایروال و تجهیزات برقرای امنیت در شبکه

شما زمانی سراغ خرید سرور مجازی خواهید رفت که یا پروژه ­ی شما آنقدر مهم است که نیاز به خرید سرور مجازی دارید یا کسب و کار شما به حدی رشد کرده است که هاست میزبانی اشتراکی پاسخگوی نیاز شما نبوده است ، پس در هر حالتی قطعا شما به دلیل ارتقای کیفیت لود وب سایت و پروژه خود تصمیم به خرید سرور مجازی گرفته اید .

در انتخاب و خرید سرور مجازی به این نکته توجه داشته باشید که ارائه دهنده خدمات سرور مجازی از تجهیزات فایروال، کنترل و دفع حمله (Attack) در سطح دیتاسنتر و شبکه اختصاصی خود استفاده کند و سرور مجازی را با این امکان در اختیار شما قرار دهد، این پارامتر نقش بسیار مهمی در حفظ پایداری و امنیت سرور مجازی شما خواهد داشت.

 

6_ سرور مجازی مدیریت شده

شما با خرید سرور مجازی در ابتدا یک سیستم عامل و یا یک کنترل پنل نصب شده روی سیستم عامل از سرویس دهنده سرور مجازی دریافت خواهید کرد. در اصطلاح فنی این وضعیت یک سرور مجازی خام می باشد و جهت استفاده بهینه از منابع سرور و برقراری امنیت روی سرور مجازی و نصب نرم افزار های مورد نیاز راه اندازی پروژه می بایست سرور مجازی به صورت کامل پیکربندی (Config) شود ، انجام این کار نیاز به مهارت تخصصی در سطح سیستم عامل و همچنین نرم افزارهای مورد نیاز شما دارد ، اگر خود شما دانش کافی در این زمینه را ندارید مهم است که سرویس دهنده سرور مجازی خدمات مدیریت سرور ( این خدمت می تواند شامل هزینه­ی مجزا یا رایگان باشد) را در طول دوره قرارداد به شما ارائه نماید تا در هر زمان که سرور شما دچار اختلال شد و یا نیاز به اعمال تغییراتی داشتید بتوانید از خدمات یک متخصص حرفه ای سرور بهره­مند گردید .

کلیه سرورهای مجازی ارائه شده در مارال هاست دارای خدمات مدیریت رایگان می باشند، همچنن شما می توانید خدمات ویژه مدیریت 24 ساعته را بر روی سرور های مجازی در هنگام خرید سرور انتخاب نمایید.

سرور مجازی مدیریت شده

7_ خدمات بکاپ روی سرور مجازی

عموما سرویس دهنده خدمات میزبانی وب، ارائه خدمات بکاپ گیری را به عنوان یکی از پارامترهای درج شده در سرویس­ های هاست اشتراکی بیان می نماید، اما در خصوص سرور مجازی عموما شرکت­های ارائه دهنده خدمات سرور مجازی انجام عملیات بکاپ گیری داخل سرور را به مشتری واگذار می­ نمایند و در این خصوص خدماتی ارائه نمی­ دهند. در حال حاضر ابزارها و نرم افزارهایی جهت بکاپ گیری از کل سرور مجازی در لایه مجازی ساز وجود دارد تا در صورت بروز مشکل، شما بتوانید بکاپ ایجاد شده روی سرور مجازی خود را به صورت کامل ریستور نمایید، بنابراین در هنگام خرید سرور مجازی به این نکته دقت کنید که آیا سرویس دهنده سرور مجازی شما خدمات بکاپ گیری ارائه می نماید یا خیر.

مارال هاست از تمام سرورهای مجازی ارائه شده حداقل 2 بکاپ در هفته ایجاد می نماید و شما می توانید این سرویس را در هنگام ثبت سفارش سرور مجازی انتخاب نمایید .

خدمات بکاپ

 

8_ مانیتورینگ

شما با خرید سرور مجازی و نصب سرویس­ها و نرم افزارهای مورد نیاز خود یک سرور کاملا اختصاصی برای راه اندازی پروژه خود خواهید داشت، مهم است که سرور شما به صورت 24 ساعته در تمام روزهای سال با کیفیت سرویس دهی نماید، قطعا هر گونه اختلال و دانتایمی (downtim) می تواند باعث بروز مشکل در اجرای نرم افزارها و وب سایت شما روی سرور شود، ارائه دهنده خدمات سرور مجازی می تواند با ارائه سرویس مانیتورینگ، تمام سرویس ها و همچنین سلامت سرور را به لحاظ نرم افزاری و سخت افزاری به صورت 24 ساعته مانیتور نماید تا در صورت بروز هر گونه اختلال، شما بتوانید در سریعترین زمان ممکن مشکل را رفع نمایید.

 

9_ خدمات پشتیبانی

در هنگام خرید سرور مجازی باید به این نکته توجه داشته باشید که در مواردی شما نیاز به دریافت خدمات از شرکت ارائه دهنده سرور مجازی دارید، زمان پاسخگویی به هر درخواست، روش های ارتباطی با واحد پشتیبانی و همچنین بازه­ی زمانی ارائه خدمات پشتیبانی نیز بسیار مهم است. همچنین دانش تخصصی واحد پشتیبانی نیز در حل سریع مشکلات بسیار اهمیت دارد، پس این پارامتر که شرکت ارائه دهنده خدمات دارای تیم پشتیبانی فنی حرفه ای به صورت 24 ساعته جهت ارائه خدمات به شما باشد، در اتخاب سرویس دهنده سرور مجازی بسیار مهم است.

مواردی که در این مقاله در خصوص انتخاب سرور مجازی مناسب به شما توضیح دادیم پارامترهای اصلی در انتخاب صحیح سرور و همچنین سرویس دهنده سرور مجازی بود ، قطعا هر وب سایت یا پروژه ای نیازمندی­های اختصاصی خود را نیز می تواند داشته باشد، در هر زمان شما می توانید با ما در تماس باشید تا از مشاوره همکاران ما در واحد سرورهای مجازی بهرمند گردید و مناسب ترین سرور را خریداری بفرمایید .

پشتیبانی سرور مجازی

 

10_ قیمت

قطعا پارامتر قیمت نقش بسیار مهمی در انتخاب شما خواد داشت. شما می­ بایست یک هزینه منطقی برای خدماتی که دریافت می کنید پرداخت نمایید. این پارامتر می تواند به شما در انتخاب صحیح سرور کمک کند، برای خرید سرور مجازی سرویس دهندگان متعدد را با هم مقایسه کنید و در مورد قیمت سرویس های نامتعارف نگران باشید ، اگر سرویس دهنده ای یک سرور را بسیار ارزان تر از سایر ارائه دهندگان خدمات ارائه می کند قطعا باید نگران کیفیت سرویس خود در آینده باشید و همچنین اگر سرویس دهنده ای نسبت به سایر شرکت های ارائه دهنده خدمات مشابه هزینه ای نامتعارف و بالاتر دریافت می کند قطعا دلیل بر بهتر بودن آن سرویس و سرویس دهنده نیست.

 

نتیجه گیری

به طور کلی می توان سرور مجازی را به عنوان یکی از سرویس های کاربردی و مهم معرفی نمود و همانطور که دیدیم شما برای انتخاب این سرویس باید به موارد متعدد و بسیار زیادی توجه داشته باشید. در این بررسی دیدیم که چگونه می توان بین منابع و امکاناتی که سرور مجازی در اختیار ما قرار می دهد و همینطور قیمت آن یک تعادل را برقرار کرد. در صورتی که نیاز دارید تا از هر کدام از سرویس های متنوعی که سرور مجازی در اختیار شما قرار می دهد، مانند سرور مجازی بایننس و بورس، استفاده کنید، این راهنمای جامع به شما کمک خواهد کرد.