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

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

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

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

 

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

وب سرور لایت اسپید که بصورت 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 است.

نتیجه گیری

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

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

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

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

 

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

از اوایل دهه ۹۰ میلادی با به وجود آمدن مفهوم وب در اینترنت و پروتكل 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 ها به عنوان یک محیط امن که احتمال نقض امنیت را به حداقل میرساند، مورد توجه قرار می گیرند.

 

نتیجه گیری

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

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_ قیمت

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

نتیجه گیری

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

بررسی جزء به جزء تفاوت هاست و سرور مجازی

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

 

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

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

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

خدمات هاستینگ چیست

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

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

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

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

 

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

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

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

 

هاست چیست!؟

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

 

تفاوت هاست و سرور مجازی

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

 

منابعی که ارائه می کنند

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

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

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

 

امکانات مدیریتی

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

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

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

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

 

طیف کاربرد ها و کارایی

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

  1.     سرور مجازی بایننس
  2.     سرور مجازی بورس
  3.     سرور های هاستینگ و میزبانی وب
  4.     گیم سرور ها
  5.     سرور های برنامه های تحت شبکه مانند برنامه های حسابداری
  6.     کار تیمی روی یک پروژه، مانند پروژه های برنامه نویسی و گرافیکی
  7.     راه اندازی شبکه های خصوصی مجازی یا همان VPN (برای اطلاعات بیشتر به مقاله ” VPN چیست ” مراجعه کنید)

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

 

موارد امنیتی

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

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

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

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

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

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

 

قیمت

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

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

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

قیمت هاست و سرور مجازی

 

نتیجه گیری

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

داکر چیست ؛ بررسی یک قابلیت ویژه به زبانی ساده

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

قبل از اینکه به بررسی خود داکر بپردازیم و ببینیم بهتر است کمی در مورد کانتینر ها صحبت کنیم.

 

کانتینر چیست؟

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

کانتینر چیست

بیایید آن را با یک مثال درک کنیم:

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

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

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

 

داکر چیست؟

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

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

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

 

تفاوت ماشین مجازی با داکر چیست!؟

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

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

 

دلیل استفاده از داکر چیست

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

  1.  ثبات و سازگاری: منظور از سازگاری این است که Docker یک محیط سازگار برای برنامه شما از طریق توسعه از طریق تولید را فراهم می کند و شما هر بار از همان نقطه شروع به کار می کنید.
  2. سرعت: منظور از سرعت، این است که شما می توانید به سرعت یک فرآیند جدید را روی سرور اجرا کنید. از آنجا که تصویر با فرایندی که می خواهید اجرا کنید از قبل پیکربندی و نصب شده است، اجرای فرایندی از معادله را به چالش می کشد.
  3. انزوا: منظور از انزوا این است که به طور پیش فرض هر ظرف داکر در حال اجرا از شبکه، سیستم فایل و سایر فرآیندهای در حال اجرا جدا شده است.
  4. فایل لایه ای: دلیل چهارم این است که سیستم Docker فایل لایه ای است. با شروع از یک تصویر پایه، هر تغییری که در یک ظرف یا تصویر ایجاد می کنید، به یک لایه جدید در سیستم فایل تبدیل می شود. در نتیجه، لایه های سیستم فایل در حافظه پنهان می شوند، تعداد مراحل تکراری در طول روند ساخت Docker کاهش می یابد و مدت زمان بارگذاری و بارگیری تصاویر مشابه کاهش می یابد.
  5. ذخیره سازی حالت: همچنین اگر برای از کار افتادن یک کانتینر به عیب یابی نیاز دارید، می توانید حالت ظرف را ذخیره کنید. لایه های سیستم فایل مانند Git هستند، اما در سطح سیستم فایل هستند. هر تصویر Docker ترکیبی خاص از لایه ها است.

 مزایای داکر

 

مزایای استفاده از داکر چیست

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

 

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

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

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

 

استقرار سریع برنامه

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

 

قابلیت جابجایی در بین ماشین ها

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

تنظیمات داکر

 

کنترل نسخه و استفاده مجدد از مؤلفه ها

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

 

اشتراک گذاری

 می توانید از یک مخزن راه دور استفاده کنید تا کانتینر خود را با دیگران به اشتراک بگذارید. Red Hat رجیستری را برای این منظور فراهم می کند و همچنین می توانید مخزن خصوصی خود را پیکربندی کنید.

 

حجم و سرعت

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

 

تعمیر و نگهداری ساده

Docker تلاش و خطر ابتلا به مشکلات وابستگی به برنامه را کاهش می دهد.

 

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

 

دلیل یادگیری داکر چیست؟

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

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

دلایل استفاده از داکر

 

شرایط امنیتی داکر چیست

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

برای حفظ امنیت برای ایجاد ارتباط از راه دور با Daemon و از پروتکل SSH استفاده کنید که هم امنیت را فراهم می کند و هم با ابزار های مختلف می توان کاربرانی که ssh میزنند را مانیتور و لاگ کرد.

 

نصب و راه اندازی Docker Desktop برای ویندوز10

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

برای دانلود داکر دسکتاپ به سایت www.docker.com مراجعه نمایید و متناسب با نیاز خود آن را دانلود و نصب کنید.

توجه کنید که اگر در دانلود آن با خطا مواجه شدید می توانید از روش زیر IP خود را تغییر دهید تا بتوانید در صورت تحریم برنامه را دانلود نمایید.

  • وارد کنترل پنل شوید.
  • روی گزینه ی Network and Internet کلیک کنید.
  • سپس گزینه ی Network and sharing center را انتخاب نمایید.
  • در سمت چپ صفحه ی باز شده Change adapter settings را انتخاب کنید.
  • در این بخش روی شبکه ی خود راست کلیک کنید.
  • گزینه ی Properties را بزنید.
  • و سپس Internet Protocol Version 4 (TCP/IPv4) را انتخاب نمایید.
  • حالا Properties را بزنید.
  • بر روی گزینه ی Use the following DNS server addresses کلیک کنید.
  • لازم است IP جدید را در خانه های آن بنویسید
  • حالا می شود از سایت داکر ، داکر ویندوز را دانلود نمایید.

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

 

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

تنظیمات بخش های مختلف ویندوز داکر را در زیر آورده ایم:

 

تنظیمات Settings:

منوی Docker Desktop به شما امکان می دهد تنظیمات Docker خود را مانند نصب، به روزرسانی ها، چنل های ورژن، ورود به سیستم Docker Hub و موارد دیگر پیکربندی کنید.

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

  1. با کلیک کردن روی نماد Docker در قسمت Notifications منوی Docker Desktop را باز کنید.
  2. برای باز کردن گفتگوی تنظیمات ، تنظیمات را انتخاب کنید.

 

عمومی General:

در برگه عمومی گفتگوی تنظیمات ، می توانید

  • زمان شروع و به روزرسانی Docker را پیکربندی کنید.
  • هنگام ورود به سیستم Docker را شروع کنید. برای اینکار پس از ورود به سیستم Windows ، به طور خودکار Docker Desktop را شروع کنید.
  • Exam daemon on TCP: // localhost: 2375 without TLS: برای فعال کردن کلاینت های قدیمی برای اتصال به daemon Docker ، روی این گزینه کلیک کنید. شما باید با احتیاط از این گزینه استفاده کنید زیرا افشای daemon بدون TLS می تواند منجر به حملات اجرای کد از راه دور شود.
  • ارسال آمار استفاده: به طور پیش فرض ، Docker Desktop تشخیص ، گزارش خرابی و داده های استفاده را ارسال می کند. اما یده این اطلاعات برای داکر چیست ؟ این اطلاعات به داکر کمک می کند تا برنامه را بهبود بخشد و عیب یابی کند. برای انصراف ، کادر انتخاب را پاک کنید. داکر ممکن است به صورت دوره ای برای کسب اطلاعات بیشتر از شما درخواست کند.

 

منابع Resources:

تب Resources به شما امکان می دهد CPU ، حافظه ، دیسک ، پروکسی ها ، شبکه و سایر منابع را پیکربندی کنید. بسته به اینکه از پکیج لینوکس در حالت WSL 2 ، پکیج لینوکس در حالت Hyper-V یا پکیج ویندوز استفاده می کنید ، تنظیمات مختلفی برای پیکربندی در دسترس است.

 

پیشرفته Advanced:

برای محدود کردن منابع موجود در Docker از برگه Advanced استفاده کنید.

  • پردازنده ها: به طور پیش فرض ، Docker Desktop قرار است از نیمی از پردازنده های موجود در دستگاه میزبان استفاده کند. برای افزایش قدرت پردازش، این المان را روی عدد بالاتر تنظیم کنید. همینطور می توانید برای کاهش، تعداد را کم کنید.
  • حافظه: به طور پیش فرض ، Docker Desktop برای استفاده از 2 گیگابایت حافظه زمان اجرا ، اختصاص داده شده از کل حافظه موجود در دستگاه شما تنظیم شده است. برای افزایش RAM ، این را روی عدد بالاتر تنظیم کنید و برای کاهش آن ، عدد را کم کنید.
  • Swap: در صورت لزوم اندازه پرونده swap را پیکربندی کنید. پیش فرض 1 گیگابایت است.
  • اندازه تصویر دیسک: می توانید با این گزینه اندازه تصویر دیسک را مشخص کنید.
  • مکان تصویر دیسک: مکان حجم Linux را که در آن ظروف و تصاویر ذخیره می شود، مشخص کنید.

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

 

به اشتراک گذاری فایل File sharing:

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

 

سخن پایانی

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

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

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

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

 

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

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

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

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

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

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

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

 

انواع روش های اتصال به سرور مجازی

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

 

اتصال از طریق برنامه های PC

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

 

اتصال با استفاده از SSH

در این روش شما این امکان را خواهید داشت تا با استفاده از یک ترمینال خط فرمان به سرور مجازی خود متصل شوید و کلیه دستورات کنترلی خود را به آن بدهید. برای اینکار شما می توانید از طریق CMD در ویندوز، Terminal لینوکس و یا برنامه هایی که برای این کار ایجاد شده اند ارتباط خود را برقرار کنید. برنامه PuTTY  یکی از این برنامه هاست. این برنامه که به عنوان یک SSH Client شناخته می شود یکی از مواردی است که به شما این امکان را می دهد که به سرور مجازی خود دسترسی پیدا کنید.

اتصال به سرور مجازی

 

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

یکی دیگر از مواردی که با استفاده از آن می توانید یک ریموت به سرور مجازی خود ایجاد کرده و آن را کنترل کنید بهره گیری از افزونه Chrome Remote Desktop است که روی گوگل کروم نصب می شود و آن را تبدیل به یک RDP (Remote desktop controller) حرفه ای می کند.

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

 

اتصال به سرور مجازی با موبایل

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

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

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

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

 

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

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

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

 

Remote desktop 8

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

این برنامه کاربردی به شما قابلیت های کاربردی زیادی را ارائه می کند که برترین آنها به این صورت می باشد:

  1.     امکان استفاده و اتصال به چند دسکتاپ به صورت همزمان.
  2.     امکان استفاده از مالتی تاچ در مواردی که ویندوز آنها را پشتیبانی می کند.
  3.     امکان دریافت و پخش ویدئو و صدا با کیفیت بالا از سیستمی که به آن متصل است.
  4.     برقراری یک ارتباط امن و مطمئن
  5.     امکان استفاده از SSH، VNC، FTP و همینطور Telnet را به کاربران می دهد.

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

 

Chrome Remote Desktop

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

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

 

VNC Viewer

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

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

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

 

برنامه Anydesk

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

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

 

برنامه TeamViewer

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

همانطور که گفتیم بعضی از سیاست های TeamViewer ممکن است خیلی کاربردی به نظر نرسد، به عنوان مثال در نسخه موبایل شما می توانید 7 نسخه متمایز از این برنامه را مشاهده کنید که برای کاربرد های مختلفی معرفی شده اند، اما شما باید برای اتصال به سرور مجازی با موبایل از نسخه TeamViewer for Remote Control استفاده کنید.

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

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

 

مزایا و معایب اتصال به سرور مجازی با موبایل

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

مزایای اتصال به سرور مجازی با موبایل

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

 

مزایای اتصال به سرور مجازی با موبایل

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

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

 

معایب اتصال به سرور مجازی با موبایل

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

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

اتصال به سرور مجازی

 

نتیجه گیری

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