فهرست محتوا
- بهروزرسانی سیستمعامل، نرمافزارها و درایورها
- استفاده از منابع قویتر
- بهینهسازی تنظیمات سرور
- تحقیق در مورد اعتبار شرکت ارائهدهنده
- استفاده از vps مدیریتشده یا سرور اختصاصی
- استفاده از CDN
- استفاده از وبسرورهای پرسرعت
- بهینهسازی تصاویر و ویدئوها
- بهینهسازی کدها
- لود بالانسینگ
- پروکسی معکوس
- استفاده از کشینگ
- مانیتور کردن مداوم سرور با ابزارهای مانیتورینگ
- بهینهسازی و بهروزرسانی پایگاه داده
- استفاده از پایگاه داده MariaDB بهجای MySQL
- سؤالهای متداول
ما برای راهاندازی کسبوکار آنلاین خود قبل از هر چیزی نیاز به خرید دامنه و هاست داریم. هاست اشتراکی، سرور مجازی، هاست ابری و سرور اختصاصی، ۴ سرویس اصلی حوزه هاستینگ هستند. امروزه دارندگان وبسایت علاقه زیادی به خرید سرور مجازی دارند و علت آن کاملا روشن است زیرا میتوانند با صرف هزینه بسیار کمتری به امکانات و منابع تقریبا مشابه به سرور اختصاصی دست پیدا کنند. بااینحال ممکن است سرعت سرور مجازی که خریداری کردهاید، پاسخگوی نیازهای وبسایت و یا کسبوکار آنلاین شما نباشد که این امر میتواند در نهایت منجر به نارضایتی مشتریان و زیانهای مالی بسیاری شود. اما جای هیچ نگرانی نیست و ما در این مقاله میخواهیم شما را با ۱۵ روش مختلف برای افزایش سرعت VPS آشنا کنیم:
بهروزرسانی سیستمعامل، نرمافزارها و درایورها
بهروزرسانی مواردی مانند سیستمعامل، نرمافزارها (آنتی ویروس و…)، درایورها (درایور کارت شبکه، کارت گرافیک و…)، وبسرور، وصلههای نرمافزاری، افزونهها، Themeها، CMS (وردپرس، دروپال و…)، کنترل پنل و غیره در مجموع باعث بهبود سرعت و عملکرد سرور مجازی و همچنین رفع آسیبپذیریهای امنیتی، افزایش پایداری سرور، بهبود فرایندهای در حال اجرا و از بین بردن باگها میشود. برای بهروزرسانی موارد ذکر شده میتوانید از کنترل پنل و یا از کلاینت SSH استفاده کنید.
استفاده از منابع قویتر
گاهی اوقات ناکافی بودن منابع سختافزاری (CPU و RAM و پهنایباند و…) علت اصلی کندی VPSها میباشد. اما این مشکل بهآسانی قابلحل است زیرا سرورهای مجازی درکل از مقیاسپذیری بسیار خوبی برخوردار بوده و میتوانید در مدت زمان کوتاهی منابع سختافزاری و نرمافزاری آنها را ارتقاء دهید. توجه داشته باشید که هر وبسایت یا سروری نیاز به منابع متفاوتی دارد. بهعنوانمثال حداقل رم موردنیاز برای راهاندازی وبسایت وردپرسی ۱ گیگابایت است. در هنگام خرید سرور مجازی حتما به نوع هارد آن نیز توجه کرده و در صورت امکان بهجای هارد SSD از NVMe استفاده کنید.
بهینهسازی تنظیمات سرور
بهینهسازی تنظیمات سرور شامل مواردی مانند بهبود تنظیمات وبسرور، فعالسازی و بهینهسازی فایروال، بهروزرسانی PHP، پیکربندی آدرسهای IP، فعال کردن HTTP2، پیکربندی اصولی شبکه، ایمنسازی SSH با کلیدهای عمومی، فعالسازی و پیکربندی ابزارها و قابلیتهای مرتبط با کشینگ، استفاده از لود بالانسینگ و پروکسی معکوس، غیرفعالسازی سرویسهای غیرضروری، تنظیمات بکاپگیری و موارد دیگر میشود.
تحقیق در مورد اعتبار شرکت ارائهدهنده
گاهی اوقات علت اصلی کندی سرورها، کیفیت پایین خدمات ارائهشده میباشد و بنابراین قبل از خرید سرور مجازی حتما در مورد شرکتهای ارائهدهنده خدمات هاستینگ و همچنین سوابق و پلنهای آنها تحقیق کنید و بادقت تمام امکانات نرمافزاری و سختافزاری آنها را مورد بررسی قرار دهید و در صورت امکان برای انجام این کار از افراد متخصص در حوزه هاستینگ مشورت بگیرید. مطمئن شوید شرکت موردنظر شما از پلن بازیابی فاجعه استفاده کرده و سرورهای آنها نیز از مقیاسپذیری خوبی برخوردار باشند. بادقت آدرس، شماره تلفن، گواهینامه SSL، آدرس ایمیل و نمادهای الکترونیکی آنها را بررسی کرده و با آنها دررابطهبا نگرانیهایی که در مورد سرعت سرور دارید، صحبت کنید. توجه داشته باشید که برخی از شرکتهای ارائهدهنده خدمات هاستینگ نیز این امکان را به شما میدهند تا برای مدت زمان مشخصی بهصورت آزمایشی از سرویسهای آنها استفاده کنید.
استفاده از vps مدیریتشده یا سرور اختصاصی
سرورهای مجازی مدیریتشده معمولاً عملکرد و سرعت بهتری از VPSهای مدیریت نشده دارند و علت آن این است که تیمی متخصص وظیفه نگهداری، پیکربندی، حفظ امنیت، مدیریت و بهینهسازی سرور شما را بر عهده داشته و این موارد قطعا میتوانند بهصورت مستقیم و غیرمستقیم بر سرعت سرور مجازی شما تأثیر بگذارند. برای درک بهتر تفاوتهای این دو نوع سرور مجازی میتوانید مقالهی «مقایسه سرور مجازی مدیریتشده و مدیریت نشده» را مطالعه کنید. گزینه دیگر استفاده از سرور اختصاصی است. سرور اختصاصی نوعی خدمات هاستینگ است که معمولاً منابع آن بیشتر از سرور مجازی بوده و کاربران آن میتوانند به شکلی کاملا اختصاصی به تمام منابع سرور فیزیکی دسترسی داشته باشند که البته هزینه استفاده از سرورهای اختصاصی اغلب بالاتر از سرورهای مجازی است.
استفاده از CDN
هر سیستم توزیع محتوا یا CDN (مخفف Content Delivery System) شبکهای از سرورهای توزیعشده در نقاط مختلف جغرافیایی است که هدف اصلی آن کمک به بهبود سرعت اینترنت، وبسایتها و سرورها میباشد. وقتی کاربری درخواستی را از طریق مرورگر ارسال میکند، CDN مربوطه فوراً از طریق نزدیکترین سرور لبه (Edge Server) خود به کاربر، دادهها و فایلهای (عکسها، ویدئوها، فایلهای CSS و JS و…) موردنظر او را به سمتش ارسال میکند که این امر باعث افزایش سرعت بارگذاری وبسایتها میشود. CDNها در مجموع سبب افزایش نرخ آپتایم، کاهش لتنسی، بهبود مقیاسپذیری و فرایند کشینگ، بهینهسازی مصرف پهنای باند و بهبود عملکرد و سرعت سرورهای مجازی میشوند.
استفاده از وبسرورهای پرسرعت
وبسرور نرمافزاری است که درخواستهای HTTP کلاینتها (مرورگر و…) را مورد پردازش قرار داده و در کمترین زمان ممکن دادهها و فایلهای موردنظر آنها را به سمتشان ارسال میکند که این عمل باعث کاهش بار ترافیک ورودی به سرورهای مجازی میشود. بااینحال وبسرورها سرعت یکسانی ندارند و برخی از آنها بسیار سریعتر هستند. بهعنوانمثال وبسروهای لایتاسپید و انجینایکس به دلیل معماری رویداد-محور خود سریعتر از وبسرورهای سنتی مانند آپاچی و IIS عمل کرده و میتوانند هزاران درخواست را بهصورت همزمان مورد پردازش قرار دهند.
بهینهسازی تصاویر و ویدئوها
کاهش سایز تصاویر و ویدئوها میتواند تأثیر بسزایی بر سرعت VPS و بارگذاری صفحات وبسایت شما داشته باشد. بنابراین بهتر است تا حد ممکن حجم فایلهای وبسایت خود را کاهش دهید و از فرمتهای مناسب (Webp و JPEG و PNG و MP4 و WebM و…) استفاده کنید. البته کاهش حجم فایلها باید تا حدی باشد که بر کیفیت آنها تأثیر نگذارد زیرا تصاویر و ویدئوهای بیکیفیت تأثیر منفی بر تجربه کاربری بازدیدکنندگان وبسایتها میگذارند. شما همچنین میتوانید از تکنیک لود تنبل (Lazy Loading) استفاده کنید. در این تکنیک، محتوای صفحات تنها زمانی به نمایش گذاشته میشود که کاربر به آن نیاز داشته باشد. امروزه ابزارهای بهینهسازی تصاویر و ویدئو مختلفی در بازار وجود دارد که از میان آنها میتوان به Tinypng ،Handbrake ،Squoosh و Freeconvert اشاره کرد.
بهینهسازی کدها
بهینهسازی کدها نیز میتواند به افزایش سرعت و عملکرد وبسایتها کمک بسیاری کند و روشهای متعددی برای انجام این کار وجود دارد. بهعنوانمثال شما میتوانید با حذف کردن کدها و کاراکترهای اضافی، فضایهای خالی بین خطوط و کامنتهایی که برای دستورات وارد شده ایجاد کردهاید، از حجم فایلهای HTML ،CSS و JavaScript بکاهید. امروزه ابزارهای مختلفی برای کاهش حجم فایلهای وب وجود دارد که از میان آنها میتوان به CSSNano ،HTMLMinifier و UglifyJS اشاره کرد. توجه داشته باشید که هر افزونهای که بر روی وبسایت خود نصب میکنید حاوی تعداد زیادی کد میباشد و بنابراین در اولین فرصت اقدام به حذف افزونههای غیرضروری کنید. روش دیگر استفاده از تکنیک جاوا اسکریپت ناهمگام (Asynchronous JavaScript) است که این امکان را به مرورگرها میدهد تا صفحات وب را بدون منتظر ماندن برای اجرای کامل دستورات جاوا اسکریپت بارگذاری کنند. تکنیک جاوا اسکریپت ناهمگام این امکان را به جاوا اسکریپت میدهد تا عملیاتهای برنامهنویسی زمانبر را همزمان با سایر تسکها انجام دهد.
لود بالانسینگ
لود بالانسینگ یکی دیگر از تکنیکهای افزایش سرعت VPS میباشد و لود بالانسرها با توزیع یکنواخت ترافیک ورودی میان سرورهای مختلف باعث کاهش فشار بر روی سرورهای مجازی و در نهایت افزایش عملکرد و سرعت آنها میشوند. لود بالانسرها برای توزیع ترافیک از الگوریتمهای مختلفی مانند IP hash و Round-robin استفاده میکنند. بنابراین با وجود لودبالانسر هر چقدر هم ترافیک زیاد باشد، بازهم سرور مجازی شما به فعالیت عادی خود ادامه خواهد داد.
پروکسی معکوس
پروکسی معکوس (Reverse Proxy) نوعی سرور واسطه است که میان سرور اصلی و کلاینتها قرار گرفته و پس از بررسی درخواستهای ورودی آنها را به سمت سرور مناسب ارسال میکنند. پروکسی معکوس پس از آنکه سرور انتخابی، درخواست موردنظر را پردازش کرد، پاسخ ایجادشده را بهسرعت به سمت کلاینت برمیگرداند. کلاینتها در واقع بهصورت مستقیم با پروکسی معکوس ارتباط برقرار میکنند و نمیتوانند تشخیص دهند که کدام سرور درخواست آنها را پردازش کرده است. پروکسیهای معکوس همچنین از قابلیت کشینگ نیز پشتیبانی کرده و بهعنوانمثال میتوانند فایلهای CSS و JavaScript وبسایت شما را در حافظه پنهان خود ذخیره کنند. بنابراین وقتی کاربری درخواستی را ارسال میکند، پروکسی معکوس آن را به سمت حافظه پنهان خود هدایت میکند که این عمل در مجموع باعث کاهش فشار بر روی سرور مجازی شما میشود. پروکسی معکوس همچنین میتواند بهعنوان یک لود بالانسر نیز عمل کند و ترافیک ورودی را به شکلی متعادل میان سرورهای بکاند (Back-End Servers) توزیع میکند.
استفاده از کشینگ
ذخیرهسازی فایلها در حافظه پنهان باعث کاهش زمان بارگذاری صفحات وب و در نتیجه کاهش درخواستهای ورودی به VPS و فشار آمدن به آن میشود. بنابراین وقتی کاربری برای مشاهده محتوای موردنظر خود درخواستی را ایجاد میکند، حافظه پنهان فورا آن را در اختیار او قرار میدهد و دیگر نیاز نیست سرور تمام درخواستها را مورد پردازش قرار دهد. در مجموع میتوان انوع مختلفی از فایلها (فایلهای HTML، تصاویر، پاسخهای API، کوئریهای پایگاه داده و…) را در حافظه پنهان ذخیرهسازی کرد و برای انجام این کار میتوانید از ابزارهای کشینگ مانند Varnish ،Memcached و Redis استفاده کنید. اگر هم وبسایت وردپرسی دارید، در این صورت برای کشینگ محتوای وبسایت خود میتوانید از افزونههایی مانند WP Rocket و WP Super Cache استفاده کنید. علاوه بر این، CDNها نیز از قابلیت کشینگ پشتیبانی کرده و وبسرورها نیز معمولا دارای قابلیتهای کشینگ پیشرفتهای هستند. بهعنوانمثال وبسرور لایتاسپید دارای ابزار کشینگ LSCache است که از لحاظ سرعت بسیار بهتر از ابزارهای مبتنی بر PHP عمل میکند.
مانیتور کردن مداوم سرور با ابزارهای مانیتورینگ
ابزارهای مانیتورینگ بااینکه بهصورت مستقیم باعث افزایش سرعت سرورها نمیشوند اما کاربران با استفاده از آنها میتوانند عملکرد VPS خود را بهصورت مداوم مورد تجزیهوتحلیل قرار داده و مشکلات موجود (مانند مصرف بیش از حد یک برنامه از منابع و…) را شناسایی کنند. ابزارهای مانیتورینگ در مجموع اطلاعاتی را در مورد میزان مصرف منابع، ترافیک شبکه، مشکلات موجود، آپدیتها، سلامت سرور و فرایندهای در حال اجرا در اختیار شما قرار میدهند. Prometheus و Zabbix و Nagios و Netdata از جمله معروفترین ابزارهای مانیتورینگ بازار هستند.
بهینهسازی و بهروزرسانی پایگاه داده
بهینهسازی پایگاه داده نیز نقش مؤثری در بهبود سرعت سرورهای مجازی دارد. مطمئن شوید پایگاه داده شما به منابع کافی (RAM ،CPU، فضای ذخیرهسازی و…) دسترسی دارد. علاوه بر این، فعالیتهای سرویسها و برنامههایی که از پایگاه داده استفاده میکنند را بهصورت مداوم مورد بررسی قرار دهید زیرا ممکن است بهعنوانمثال سرویسی بیش از حد نیاز خود منابع مصرف کند. برای افزایش ظرفیت دیتابیس نیز میتوانید دادههای قدیمی و بدون استفاده را پاک کنید. اندیسگذاری دادهها (Data Indexing) یکی دیگر از روشهایی است که میتواند به بهبود عملکرد پایگاه داده کمک بسیاری کند و درکل باعث سازماندهی دادهها و همچنین کاهش مدت زمان انتظار کوئریها برای ارسال به سرور میشود. علاوه بر این بهمنظور بهبود امنیت و عملکرد وبسایت خود مطمئن شوید که از آخرین نسخه دیتابیس استفاده میکنید. ابزارهایی مانند phpMyAdmin و MySQL Workbench نیز میتوانند به مدیریت و بهینهسازی دیتابیس شما کمک فراوانی کنند.
استفاده از پایگاه داده MariaDB بهجای MySQL
انتخاب پایگاه داده یکی دیگر از عوامل مهمی است که میتواند بر روی سرعت سرور شما تأثیر بگذارد. MariaDB یکی از محبوبترین پایگاههای داده رابطهای (RDBMS) متنباز در بازار میباشد که توسط توسعهدهندگان اصلی پایگاه داده معروف MySQL توسعه داده میشود. MariaDB همچنین سازگاری بسیار خوبی با MySQL داشته و میتوانید آن را بهآسانی و بدون تغییر کدهای نرمافزار، جایگزین مایاسکیوال کنید. این دیتابیس از لحاظ سرعت نیز عملکرد بهتری نسبت به MySQL داشته و مجهز به ۱۲ موتور ذخیرهسازی پیشرفته (Aria ،MyRocks و…) میباشد که میتواند انواع مختلفی از دادهها را با سرعت بالایی پردازش کند.
سؤالهای متداول
چگونه سرعت وبسایت خود را اندازهگیری کنیم؟
برای اندازهگیری سرعت وبسایت خود میتوانید از ابزارهای آنلاین PageSpeed Insights، جیتی متریکس و Pingdom استفاده کنید.
در انتخاب سرور مجازی باید به چه مواردی توجه کنید؟
در هنگام خرید VPS باید به مواردی مانند سابقه و اعتبار شرکت، میزان پشتیبانی، نیازهای وبسایت، میزان امنیت و مقیاسپذیری سرورها، نرخ آپتایم و دانتایم، قیمت پلنها، نوع سیستمعامل، کنترل پنلهای ارائهشده، منابع در دسترس، کیفیت پلن بازیابی فاجعه، بودجه در دسترس و… توجه کنید.
چرا سرور مجازی من کند است؟
ناکافی بودن منابع، استفاده از برنامهها و پایگاه داده قدیمی، کدها و تصاویر بهینهسازی نشده، استفاده بیش از حد از افزونهها، پیکربندی نادرست سرور، خدمات ارائهشده بیکیفیت، مشکلات شبکه و… از جمله مهمترین دلایل کندی سرور مجازی هستند.
منابع: Monovm ،Websitebuilderinsider و Leaseweb