بایگانی

7 نکته رفع مشکلات مصرف CPU در سایت های وردپرسی

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

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

1. از شر افزونه های غیر ضروری خلاص شوید.

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

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

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

2.  WP Disable را پیکربندی کنید.

یکی دیگر از راه های کاربردی برای کاهش استفاده از CPU استفاده از WP Disable است. WP Disable افزونه‌ای است که به شما امکان را می‌دهد تنظیمات وردپرس را که CPU زا بصورت غیر ضروری  مصرف می‌کنند غیرفعال کنید. به عنوان مثال، می‌توانید جاسازی‌ها (Embed)، ایموجی‌ها و موارد دیگر را غیرفعال کنید. علاوه بر این، به شما کمک می کند تا درخواست های HTTP را کاهش دهید که می تواند عملکرد وب سایت را بیشتر بهبود بخشد. پس از نصب افزونه، این گزینه را با یک رابط کاربری آسان دریافت خواهید کرد.

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

3. بهینه سازی تصاویر

بهینه سازی تصاویر

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

می توانید از PNGGauntlet برای انجام این کار استفاده کنید. این یک افزونه رایگان است. همچنین، می توانید از JPEGmini نیز با پرداخت مبلغی بصورت ماهانه استفاده کنید.
هر دو پلاگین توصیه شده در بالا به شما امکان فشرده سازی تصاویر را می دهند. علاوه بر این، شما می توانید از افزونه هایی مانند WP Smush.it، EWWW Image Optimizer و غیره نیز استفاده نمایید.

4.  قوانین پایش (Crawl) وردپرس را پیکربندی کنید.

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

همانطور که یک Crawl یک سایت را ایندکس می کند، از فضای ارزشمند CPU استفاده می کند. برای اطمینان از اینکه این اتفاق نمی افتد، می توانید به راحتی آنها را مسدود کنید و فقط به موارد مهم اجازه دهید وب سایت شما را ایندکس کنند.

می‌توانید از تابع «قوانین محدودکننده سرعت Crawl» در Wordfence استفاده کنید تا مطمئن شوید که یک ربات مفید عملیات ایندکس را انجام میدهد. همچنین، می‌توانید تنظیمات Crawl را تغییر دهید به شرطی که وب‌سایت شما به دلیل استفاده غیرضروری از CPU کند نشود.

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

5. Carwl rate را در google و bing محدودتر کنید.

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

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

بهGoogle Search Console بروید و «site settings» را جستجو کنید. در آنجا می توانید گزینه Crawl rate را پیدا کنید.

موتور جست و جو گر Bing نیز نحوه کنترل Crawl rate مشابهی را ارائه می دهد. می توانید این کار را با رفتن به ابزار  Bing Webmasters Tools انجام دهید و سپس در تنظیمات “Crawl Control” را تغییر دهید.

6. پاکسازی پایگاه داده

پایگاه داده -هاست رایگان

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

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

بهترین روش استفاده منظم از افزونه های بهینه سازی مانند WP-Optimize و WP Rocket است. می توانید از هر دو افزونه برای پاکسازی خودکار داده ها استفاده کنید.

7. از استفاده پلاگین هایی با مصرف بالای CPU خودداری کنید.

پلاگین

شما احتمالا  افزونه های زیادی را می توانید پیدا کنید که می توانند تأثیر زیادی بر عملکرد سایت داشته باشند. اگر می خواهید استفاده از CPU خود را تحت کنترل داشته باشید، باید از این افزونه ها اجتناب کنید. برخی از پلاگین‌هایی که می‌توانند وب‌سایت شما را کند کنندو حجم CPU را اشغال کنند عبارتند از Jetpack، SumoMe، Visual Composer و غیره. برای دانستن تأثیر یک افزونه بر روی سایت خود، می توانید آن را نصب کنید و سپس به GTmetrix بروید تا تأثیر آن در وب سایتتان را بررسی کنید. اگر مصرف CPU زیاد بود، بهتر است از استفاده  آن اجتناب کنید و جایگزینی پیدا کنید.

اگر مطمئن نیستید که کدام افزونه ها CPU کمتری مصرف می کنند، می توانید از هاست های رایگان برای آزمایش افزونه ها استفاده کنید. وب سایت وستا سرور یکی از بهترین اراِئه دهندگان هاست رایگان است که هاست رایگان را برای مبتدیان ارائه می دهد. همچنین می‌توانید از لوکال هاست استفاده کنید و میزان استفاده از CPU را بررسی کنید. اگر همه چیز خوب به نظر برسد، می توانید افزونه را در وب سایت خود نصب کنید.

نتیجه پایانی

این 7 نکته مطمئناً به شما کمک می کند تا استفاده از CPU را به حداقل برسانید. همچنین می توانید از افزونه های cache برای بهبود بیشتر استفاده از CPU استفاده کنید. نکات زیادی وجود دارد که ما نمی توانیم آنها را پوشش دهیم. با این حال، نکات فوق مطمئناً به شما در بهبود مناسب کمک می کند. همچنین استفاده از سرویس هاست وردپرس وستا سرور یک گزینه مناسب برای سایت های وردپرسی می باشد.

DNS SEC چیست؟و چرا مهم است؟

DNS SEC چیست؟

DNS SEC چیست

افزونه‌های امنیتی سیستم نام دامنه، که با نام‌های DNS SEC یا DNS Security Extensions نیز شناخته می‌شوند، مجموعه خاصی از قوانین ویژه مهندسی اینترنت (IETF) برای محافظت و ایمن کردن انواع مشخصی از اطلاعات ارائه‌شده توسط Domain Name System (DNS) در پروتکل ip شبکه است.

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

DNS SEC با استفاده از امضاهای دیجیتالی خاصی در رمزنگاری کلید عمومی (Public-key cryptography) احراز هویت مبدا داده‌های DNS تأیید می کند. پیاده‌سازی DNS SEC این امکان را فراهم می سازد تا داده های DNS به جای DNS کوئری ها توسط خود DNS SEC احراز هویت شوند.

بطور کلی ،DNS SEC مجموعه ای از پروتکل های ویژه است که یک لایه امنیتی به فرآیندهای جستجو و تبادل دامنه (DNS) اضافه می کند. که سبب دسترسی یکپارچه به وب سایت ها در اینترنت  می شود. DNS SEC قادر به محافظت از نحوه توزیع داده ها یا افرادی که به آنها دسترسی دارند نیست. DNS SEC منشاء  و مبداُ داده های ارسال شده از سرور DNS را تأیید می کند، یکپارچگی آن را تأیید می کند و داده های DNS موجود را ارزیابی می کند.

DNS چیست؟

DNS چکونه کار می کند

سیستم نام دامنه (DNS) یک سیستم نامگذاری و مترجمی سلسله مراتبی و غیرمتمرکز برای منابع مختلف (سرویس ها، رایانه ها) متصل به اینترنت است. DNS مستقیماً با نام دامنه مرتبط است و نام دامنه های قابل خواندن توسط انسان (مانند vestaserver.com) را به آدرس های IP عددی برای مکان یابی و شناسایی خدمات ترجمه می کند.

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

DNS چگونه کار می کند؟

 

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

هنگامی که یک کاربر یک نام دامنه، به عنوان مثال، vestaserver.com را در مرورگر خود وارد می کند، از stub resolver، که بخش اساسی سیستم عامل است، برای ترجمه نام دامنه به یک آدرس IP خاص استفاده می کند.  بسیاری از سیستم عامل ها DNS Resolver  های داخلی به نام  Resolver Stub دارند که درخواست‌های زیادی را برای داده‌های DNS به  Resolver بازگشتی پیچیده‌تر مورد استفاده در بسیاری از شبکه‌ها منتشر می‌کند.

اکنون که Resolver  بازگشتی (Recursive resolver) درخواست صادر  می کند، درخواست DNS خود را به سرورهای معتبر مختلف ارسال می‌کند. داده های DNS دامنه در سرورهایی در اینترنت ذخیره می شوند. مرسوم است که این کار را به شخص ثالثی مانند یک شرکت میزبانی وب، شرکت های ذخیره ساز ابری یا ارائه دهنده خدمات اینترنتی سپرده شوند.

DNS Zone

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

ذخیره اطلاعات DNS

سوابق خاص ذخیره شده در پایگاه داده DNS معمولاً عبارتند از Start of Authority (SOA)، آدرس های IP، تبادلات ایمیلی SMTP (MX)، همچنین name سرور ها، اشاره گرها برای جستجوی معکوس DNS (PTR)، و نام های مستعار دامنه (ANAME).

 

چرا DNS SEC مهم است؟

چرا DNS SEC مهم است؟

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

هنگامی که یک resolver بازگشتی درخواستی را به یک name سرور ارسال می‌کند، resolver فقط می‌تواند بررسی کند که آیا پاسخ (responses) از همان آدرس IP درخواست اصلی می‌آید یا خیر. از آنجایی که IP قابل جعل است هنگامی که resolver بازگشتی داده‌های DNS را در حافظه پنهان ذخیره می‌کنند، از قبل داده‌ها را در حافظه پنهان ذخیره شده اند، که باعث افزایش سرعت در تجزیه و تفکیک داده  ها می شود.

درخواست ها به name سرورها ارسال نمی شوند. اما مشکل اینجاست که اگر مهاجمان پاسخ‌های DNS را جعل کنند، که توسط resolver بازگشتی نیز قابل قبول است،این وضعیت DNS Cache Poisoning  یا جعل سامانه نام دامنه نامیده می‌شود. بنابراین، برای هر کاربری که با آن resolver تعامل داشته باشد، داده‌های DNS جعلی ارسال می‌شود تا زمانی که TTL  منقضی شود.

سخن آخر

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

معرفی وب سرور Nginx

NGINX چیست؟

NGINX لوگو

NGINX که به صورت “انجین اِکس” تلفظ می شود، در اکتبر 2004 منتشر شد. خالق این نرم افزار، ایگور سیسوف، پروژه خود را در سال 2002 به عنوان تلاشی برای پاسخ به مشکل C10k آغاز کرد. C10k چالش مدیریت ده هزار اتصال به طور همزمان در یک سرور است.

امروزه، ارتباطات حتی  گسترده تری وجود دارند که وب سرورها باید به آن رسیدگی کنند. به همین دلیل، NGINX یک معماری رویداد محور و غیرهمزمان را ارائه می دهد. این ویژگی این سرویس را به یکی از قابل اعتمادترین سرورها برای سرعت و مقیاس پذیری بالا تبدیل می کند.
با توجه به توانایی فوق‌العاده آن در مدیریت اتصالات و سرعت زیاد و همچین متن باز بودن آن، بسیاری از وب‌سایت‌های پربازدید از سرویس NGINX استفاده می‌کنند. برخی از این غول های آنلاین عبارتند از: Google، Netflix، Adobe، Cloudflare، WordPress و بسیاری دیگر.

NGINX چگونه کار می کند؟

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

وب سرور چیست؟

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

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

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

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

NGINX در مقابل وب سرور Apache

NGINX در مقابل وب سرور Apache

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

پشتیبانی از سیستم عامل

لوگو سیستم عامل ها

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

پشتیبانی از کاربر

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

میزان کارایی

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

سخن پایانی

NGINX یک وب سرور متن باز محبوب است که به عنوان یک حافظه کش HTTP، پراکسی معکوس (reverse proxying) و متوازن کننده بار(Load Balancing) نیز عمل می کند. ساختار نرم افزار ناهمزمان و رویداد محور است. که پردازش بسیاری از درخواست ها را به طور همزمان امکان پذیر می کند. NGINX همچنین بسیار مقیاس پذیر است، به این معنی که خدمات آن همراه با افزایش ترافیک کاربرانش رشد می کند. NGINX و Apache در واقع دو تا از محبوب ترین سرورهای وب در بازار هستند.

آشنایی با Cron Job یا Cron Task در لینوکس و ویندوز

cron job چیست؟

cron job یک دستور لینوکس است که برای برنامه ریزی وظایفی که در آینده اجرا می شوند استفاده می شود. cron job معمولاً برای برنامه‌ریزی کاری که به صورت دوره‌ای اجرا می‌شود استفاده می‌شود – به عنوان مثال، برای ارسال اعلان هر روز صبح. Cron Job معمولا بر روی Server ها و Host های لینوکس مورد استفاده قرار می گیرد.

در ویندوز نیز با ویژگی ای با نام Cron Task یا  Scheduled Tasks مورد استفاده قرار گرفته و می توان از این ویژگی بهرمند شد.

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

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

/etc/crontab، که در دایرکتوری crontab /etc/cron.*/ قرار دارد.

برخی از اسکریپت‌ها، مانند Drupal و WHMCS ممکن است از شما بخواهند که cron jobs را برای انجام عملکردهای خاصی تنظیم کنید.

چرا باید از Cron Job استفاده کرد؟

چرا باید از Cron Job استفاده کرد؟

انجام مکرر یک کار ممکن است کاملاً طاقت فرسا باشد. زمان‌بندی با Cron به کاربران این امکان را می‌دهد تا وظایف یک سرور خصوصی مجازی یا هر سیستم‌عامل مشابه یونیکس را بصورت خودکار انجام دهند. این کار باعث صرفه جویی در وقت گران بهای کاربر می شود و به کاربران اجازه می دهد تا روی کارهای ضروری دیگر تمرکز کنند.
با cron jobs، کاربران می‌توانند تعمیر و نگهداری سیستم، نظارت بر فضای دیسک و برنامه‌ریزی پشتیبان‌گیری را صورت خودکار برنامه ریزی کنند. به دلیل این ویژگی ها، Cron Jobs برای رایانه هایی که بصورت 24/7 کار می کنند، مانند سرورها، عالی هستند.
در حالی که cron job ها عمدتا توسط مدیران سیستم استفاده می شوند. می توانند برای توسعه دهندگان وب نیز مفید باشند. برای مثال، به‌عنوان یک مدیر وب‌سایت، می‌توانید یک cron را برای پشتیبان‌گیری خودکار از سایت خود هر روز نیمه‌شب، دیگری برای بررسی لینک‌های خراب هر دوشنبه نیمه‌شب، و سومی برای پاک کردن کش سایت خود هر جمعه  ظهر تنظیم کنید.

محدودیت های Cron

به هرحال، مانند هر برنامه دیگری، cron محدودیت هایی دارد که باید قبل از استفاده از آن در نظر بگیرید:

کوتاه ترین فاصله بین کارها 60 ثانیه است. با cron، نمی توانید یک کار را هر 59 ثانیه یا کمتر تکرار کنید.

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

مکانیسم Retry به صورت خودکار وجود ندارد، Cron به گونه ای طراحی شده است که در زمان های کاملاً مشخص اجرا شود. اگر یک کار با شکست مواجه شود، تا زمان برنامه ریزی شده بعدی دوباره اجرا نمی شود. این باعث می شود cron برای کارهای افزاینده نامناسب باشند.

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

نحوه زمانبندی Cron Job

این آموزش به شما نشان می‌دهد که چگونه با وارد کردن دستورات در یک برنامه دربرگیرنده مانند Bash در لینوکس یا سایر سیستم‌عامل‌های مشابه یونیکس، وظایف cron را زمان‌بندی کنید.
قبل از انجام عملیات اصلی cron، ضروری است که فایل های پیکربندی مختلف cron job را بشناسید:
1.Corn Tab سیستم. از آن برای برنامه‌ریزی کارهای ضروری در سراسر سیستم استفاده می شود که فقط با ویژگی Root قابل تغییر هستند.
اگر می خواهید crontab سیستم را ویرایش کنید، مطمئن شوید که کاربر فعلی دارای قابلیت root است.

2. Cron tab کاربر. این فایل به کاربران اجازه می دهد تا وظایف cron را ایجاد و ویرایش کنند که فقط در سطح کاربر اعمال می شود.

کرون تب

اجرای Cron Job  بر روی سیستم عمل لینوکس

اجرای Cron Job  بر روی سیستم عمل لینوکس دارای قوانین و دستوراتی است که یادگیری شان  می تواند به شما این امکان را بدهد تا راحت تر یک Cron Job را تعریف کنید.

در لینوکس هر Cron Job از پنچ قسمت تشکیل شده است که به صورت * * * * *  مشخص می شوند. هر کدام از این قسمت ها (* ها ) نشان دهنده بخشی از زمان اجرا می باشند. برای مثال قسمت اول از سمت چپ نشانگر دقیقه می باشد یعنی در صورتی که Cron ساخته شده  به صورت 5 * * * *  تعریف شده باشد هر 5 دقیقه یکبار Cron Job دستور شما را اجرا میکند.

قسمت دوم به نشان دهنده مقدار ساعت میباشد که میتواند در بازه زمانی 0 الی 23 تنظیم شود. به عنوان مثال 5 13 * * * به این معنی می باشد که روزانه ساعت 13و 5 دقیقه Corn ساخته شده توسط شما، اجرا خواهد شد.

قسمت  سوم نشان دهنده تعداد روز های ماه می باشد که می تواند مقادیری مابین  1 الی 31 داشته  باشد.

ستاره چهارم نشان دهنده تعداد ماه از سال می باشد که می تواند مقادیری مابین  1 الی 12 داشته  باشد. قسمت آخر نیز نشان دهنده یک روز از هفته میباشد که از 0 الی 6 می تواند باشد. در قسمت  آخر  0 به منزله روز یکشنبه از هفته می باشد.

نمایش نحوه اجرای cron job در لینوکس
اجرای Cron Job  بر روی سیستم عمل لینوکس

جهت نمایش Cron job های تعریف شده موجود در لینوکس و همچنین اضافه کردن به انها می توان از کد دستوری زیر استفاده کرد:

crontab – e

مثال: user/local/Cpanel/scripts/cpbackup/ * * * 13 5

تنظیمات Cron Tasks در ویندوز

دستورالعمل تعریف cron Task (یا Scheduled Tasks) همانند تنظیم آن در لینوکس پیچیده نیست. جهت تنظیم آن ابتدا می بایست کلمه کلیدی  Task Scheduleder را در ویندوز جست و جو کرد تا پنجره مربوط به آن جهت اعمال تنظیمات  نمایش داده شود.

زمانی که یک Scheduled Tasks جدید را در ویندوز ایجاد می کنید می توانید با استفاده از گزینه Trigger تنظیمات مربوط به زمانندی و از گزینه Action برای وارد کردن مواردی که قصد دارید تا اجرا شوند استفاده نمایید.

نحوه تنظیم Cron Tasks در ویندوز

 

نحوه تنظیم Tasks
Scheduled Tasksتنظیمات

انواع حملات DDOS در سرور و شبکه

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

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

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

حمله DDoS  چیست؟

حملات DDOS (Distributed Denial of Service) تلاشی است برای اینکه یک سایت نتواند به درستی خدمات خود را ارايه دهد. به همین منظور هکرها با استفاده از چندین سرور یک ترافیک جعلی در سایت ایجاد می کنند و این ترافیک غیرمنتظره باعث مسدود شدن سایت و در نتیجه از دسترس خارج شدن آن می شود.

حملات DDOS توسط چندین دستگاه یا ربات متصل که به ربات( Bot )میگویند اتفاق می افتد و به این صورت عمل می کنند که هکرها (مهاجمان ) دستگاهها یا ربات هایی که Botnet نامیده می شوند را طراحی کرده و روی سرورهایی که هک شده اند قرار می دهند و با استفاده از این ربات های فعال در خواست های غیرواقعی به سرورهای سایت مقصد ارسال می کنند و به این صورت سرور یا شبکه را تحت فشار قرار داده و باعث ایجاد اختلال در سایت می شوند.

چگونه حمله DDoS را شناسایی کنیم؟

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

بعضی علايم حملات DDOS به شرح زیر است :

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

نقشه یک حمله ddos

انواع حملات DDoS

حملات DDOS در سه دسته قرار میگیرند :

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

SYN Flood

فرض کنید که یک کاربر و یک سرور در حال تبادل داده ها در یک پروتکل TCP هستند، در این ارتباط ابتدا کاربر یک عدد را با این پیام SYN (Synchronization) برای سرور ارسال می کند و از آن به بعد سرور از عدد ارسالی کاربر برای شماره گذاری بسته هایی که برای کاربر ارسال می کند استفاده می کند. وقتی سرور پیام SYN را دریافت می کند برای تایید دریافت یک پیام ACK (Acknowledge) برای کاربر ارسال می کند و در صورتی که کاربر جواب پبام ACK را برای سرور ارسال کند اتصال TCP برقرار می شود.

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

در واقع در این حمله تعداد زیادی بسته SYN به یک سرور ارسال می شود و با ارسال نکردن ACK برای سرور باعث اختلال در سرویس دهی می شوند.

البته شما با تغییر دادن IP مبدا به راحتی می توانید کاری کنید که هکرها هیچوقت پیام های (SYN | ACK) را دریافت نکنند.

Slowloris

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

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

DNS Flood

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

در DNS Flood هکرها با استفاده از مکانیزم IP Spoofing درخواست های DNS را برای سرور DNS از طریق source IP ارسال می کنند و این درخواست ها که طول بسیار بیشتری از درخواست فرستاده شده دارند باعث می شوند که منابع پردازشی سرور درگیر آن ها شده و دیگر نمی توانند درخواست های بقیه کاربران را انجام دهند.

Slow Read Attack

گاهی اوقات هکرها پس از اینکه درخواست را برای سرور یک سایت هدف ارسال کردند سایز پنجره TCP را مینیمم میکنند و این کار باعث می شود پیام با سرعت بسیار کمی دریافت و خوانده می شود و بدین ترتیب سرور را در یک ارتباط باز مشغول نگه میدارند. به این حمله Slow Read Attack می گویند.

روش های مقابله با حملات DDOS

دز بیشتر مواقع نمی توان یک راهکار مطمين برای مقابله با حملات DDOS مخصوصا اگر به میزان بالا باشد ارايه کرد. اما گاهی اوقات می توان از بعضی سرویس ها مانند سرویس هایی که (سرور مجازی لینوکس ایران) ارايه »ِدهد بعضی از آن ها را تشخیص داد.

بهترین روش برای جلوگیری از این حملات پیکربندی (confing) درست سرور می باشد. و همینطور می توانید از سیستم هایی مانند cloud flare و همینطور استفاده از پروکسی های تودرتو و وب سرور برای جلوگیری از این حملات استفاده کنید.

 

 

6 تفاوت مهم هاست اشتراکی و سرور مجازی

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

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

هاست اشتراکی

معرفی هاست اشتراکی :

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

معمولاً شما نمی‌دانید که منابع سرور را با چه کسانی یا چه وب‌سایت هایی به اشتراک می‌گذارید. هر وب سایت محدودیتی در قبال کل منابع سروری که می تواند استفاده کند دارد ، و این توسط بسته ی هاست شما تعریف می شود.

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

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

معرفی هاست اشتراکی

مزایای هاست اشتراکی :

• هاست اشتراکی به دلیل تقسیم شدن سرور به فضا های مجزا تا حد زیادی ارزان ترین گزینه میزبانی است که می توانید در دسترس داشته باشید. قیمت معمول برای این سبک هاست بین 2.99 تا 9.99 دلار متغیر است.

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

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

• نیازی به تعمیر و نگهداری فنی در سرور شما نیست ، زیرا معمولاً خود شرکت های ارائه دهنده هاست اشتراکی این وظیفه را به عهده میگیرند.

معایب هاست اشتراکی :

 ( هاست اشتراکی بسیار خوب به نظر می رسد : چون مقرون به صرفه است ، زمان کار خوبی دارد و مدیریت آن آسان است. اما ، با معایب خاصی همراه است. )

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

• سرور می تواند توسط سایت های دیگری که سرور را به اشتراک می گذارند بیش از حد بارگذاری شود.

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

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

خلاصه ی مزایا و معایب هاست های اشتراکی :

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

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

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

معرفی سرور مجازی :

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

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

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

مزایای سرورهای مجازی :

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

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

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

• مزایای اضافی سرورهای مجازی شامل کاهش هزینه های عملیاتی و سرمایه و مدیریت ساده مرکز داده است.

معایب سرور های مجازی :

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

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

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

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

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

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

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

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

به عبارت ساده ، هاست اشتراکی به این معنی است که سایت شما سروری مشابه بسیاری از سایت‌های دیگر را به اشتراک می‌گذارد. معمولاً ارزان‌ترین گزینه است، اما با پهنای باند، مدیریت و قابلیت‌های عملکرد محدود ارائه می‌شود.

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

6 تفاوت مهم سرورمجازی و هاست اشتراکیتفاوت های مهم سرورمجازی و هاست اشتراکی

( نکته : قیاس موارد زیر نسب به سرویس های میزبان دیگر سنجیده میشود )

هزینه ی مورد نیاز برای سرور های مجازی : نیاز به پرداخت هزینه ی بالاتری دارد.

امنیت مورد نیاز برای سرور های مجازی : از امنیت بالاتری برخوردار است.

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

هزینه ی مورد نیاز برای هاست های اشتراکی : نیاز به پرداخت هزینه ی کمتری دارد.

امنیت مورد نیاز برای هاست های اشتراکی : از امنیت پایین تری برخوردار است.

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

CDN چیست ؟ و استفاده از آن چه مزایایی دارد؟

CDN و مزایای استفاده از آن برای صاحبان سایتها که تمایل دارند سایت قدرتمندتری داشته باشند بسیار مهم است.

تکنولوژی CDN (Content delivery network) یک تکنولوژی قدرتمند برای تولید محتواست که استفاده از آن دو هدف مهم دارد

  • افزایش سرعت در زمان بارگذاری اطلاعات و دسترسی به اطلاعات
  • امنیت سایت به دلیل استفاده از شبکه ای از سرورها

شبکه cdn یا شبکه توزیع محتوا

شبکه توزیع محتوا چیست؟

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

عملکرد CDN به این شکل است که محتوای فایل های موجود در سایت شامل ( تصاویر، فایل کدهای CCS، فایل کدهای جاوا اسکریپت، فایل های مولتی مدیا و …) روی سرورهای مختلف در موقعیت های متفاوت کپی و ذخیره می شوند.

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

چرا به شبکه توزیع محتوا نیاز داریم؟

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

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

مزایای استفاده از CDN

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

از مزایای استفاده از CDN میتوان به موارد زیر اشاره کرد :

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

رفتار یک شبکه توزیع محتوا به چه شکل خواهد بود؟

  1. زمانی که شما شبکه تولید محتوا (CDN) را برای سایت خود فعال می کنید اطلاعات موجود در سایت شما روی تمام سرورهای CDN در تمام نقاط جهان پخش شده و در آنها کپی و ذخیره میشود و هر زمان که یک کاربر وارد سایت شما می شود محتوای فایل های موجود در سایت (تصاویر، ویديوها، فایل های اسکریپت و …) را می تواند از طریق نزدیک ترین سرور CDN دریافت کند و چون کاربر مستقیما به هاست و سرور اصلی وصل نمی شود عملکرد سایت شما بسیار بهتر خواهد شد.
  2. تمام اطلاعات موجود در سایت که در شبکه CDN ذخیره می شوند قابلیت بروز رسانی ندارند در واقع منظور فایل هایی است که نیاز به بروز رسانی ندارند مانند ( تصاویر، ویديوها، و …) اما در واقع قسمت هایی که محتوای اصلی صفحات هستند و از پایگاه داده ها خوانده می شوند نمی توانند در شبکه CDN ذخیره شوند و به طور مستقیم از سرور اصلی بارگذاری می شوند. و اگر قرار است برای پهنای باند هاست یا سرور هزینه ای صرف شود بهتر است این هزینه را کسر کرده و آن را برای فعال سازی شبکه CDN صرف کنیم. چون باعث کاهش مصرف پهنای باند شده و امنیت سایت را برای جلوگیری از حملات DDOS بالا می برد.
  3. اگر یک سایت در شبکه CDN فعال نباشد سرعت سایت در کشوری که هاست یا سرور اصلی در آن قرار دارد بسیار بالاست اما نقاطی که از نظر جغرافیایی از سرور اصلی دور هستند سرعت بسیار پایین تر خواهد بود. اما با فعال کردن یک سایت در شبکه CDN تمام کاربران در تمام نقاط نزدیک و یا دور به سرور اصلی سرعت تقریبا یکسانی دارند. شما می توانید با استفاده از ابزارهایی مانند Pingdom و یا GTmetrix سرعت یک سایت را که به شبکه CDN متصل است تست کنید.

شبکه cdn و استفاده کاربران در موقعیت های متفاوت از این شبکه

معایب استفاده از CDN

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

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

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

معرفی CDN های رایگان

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

در صورت استفاده از wordpress میتوانید از نسخه رایگان jetpack و همینطور CDN اختصاصی وردپرس استفاده کنید.