آموزش دایرکت ادمین، سی پنل، وب سایت پنل

خانه / Cache

Cache

سیستم Cache چیست و چه مزایایی دارد؟

سیستم Cache  چیست و چه مزایایی دارد؟

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

Cache  ها در لایه های مختلفی مانند  سیستم عامل ها، لایه های شبکه از جمله NetNews ، تحویل محتوا (CDN) و DNS، برنامه های کاربردی وب و پایگاه های داده استفاده می شود.

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

با توجه به میزان نرخ درخواست بالا و یا IOPS (عملیات ورودی / خروجی در هر ثانیه) عملکرد زمان ذخیره و بازیابی اطلاعات در RAM  به مراتب بیشتر از وب سرور ها و پایگاه داده های سنتی و سخت افزار مبتنی بر Disk  می باشد. شما می توانید با استفاده از cache  به طور قابل توجهی شاهد کاهش تاخیر و بهبود IOPS برای بسیاری از درخواست های برنامه کاربردی باشید. اطلاعاتcache  شده میتواند شامل نتایج پرس و جو پایگاه داده، محاسبات فشرده محاسباتی، درخواستهای API / پاسخها و المانهای وب مانند HTML، js، css و فایلهای تصویری باشد.

بهبود عملکرد برنامه

از آنجایی که حافظه RAM  سریع تر از DISK (مغناطیسی یا SSD) است، اطلاعات خواندن از حافظه Cache بسیار سریع (کمتر از یک میلی ثانیه) می باشد. این دسترسی سریعتر به داده ها به طور قابل توجهی عملکرد کلی برنامه را بهبود می بخشد.

کاهش پردازش پایگاه داده

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

کاهش بار در Backend

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

عملکرد قابل پیش بینی

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

تفاوت Cache  با CDN  چیست؟

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

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

آیا به سرویس CDN  در داخل کشور نیاز است؟

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

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

 

چرا باید از Cache  استفاده کنیم؟

  • افزایش سرعت بارگذاری محتوای سایت
  • عدم نیاز به افزایش سخت افزار و منابع در زمان بازدید و ترافیک بالا
  • کاهش هزینه سرویس و جلوگیری از خسارت در زمان هایی که ترافیک بالای پیش بینی نشده وجود دارد
  • پایداری سایت در زمان حملات سیل آسا DOS
  • آپتایم بالا سایت حتی در زمان بروز مشکل و قطعی درBackend (اطلاعات تا زمان رفع مشکل Backend از cache سیستم   فراخوانی میشود)

هاست پرسرعت نیترو چیست؟

سرویس کلود اختصاصی پرسرعت نیترو 

سرویس پرسرعت نیترو در زیرساخت اختصاصی سرورستاپ میزبانی میشود و در عین حال مناسب سایت های پربازدید با ترافیک بالا می باشد. سرورستاپ با استفاده از تکنولوژی Cache، پخش نمودن ترافیک بین چندین وب سرور مجزا و بهره گیری از سرور دیتابیس ایزوله شده، سعی کرده تا بهترین کیفیت را به منظور میزبانی سایت های پربازدید فراهم نماید. ما همچنین به منظور محافظت از زیر ساخت و سایت های میزبانی شده توسط آن، از یک لایه فایروال که به صورت کاملا اختصاصی پیکربندی شده است استفاده می نماییم. با استفاده از این فایروال توانسته ایم بسیاری از مشکلات ناشی از حملات (از قبیل Dos , DDoS) به سایت ها را تا حد چشمگیری کاهش داده و پایداری زیر ساخت نیترو را تا حد زیادی ( بیش از ۹۹% آپتایم) افزایش دهیم. در نهایت با استفاده از سرویس DNS توزیع شده امکان دسترسی به سایت در کمترین زمان برای بازدید کنندگان میسر گردیده است.

هاست نیترو برای چه سایت هایی مناسب است؟  چرا باید از هاست پرسرعت نیترو استفاده کنیم؟

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

کش کردن صفحات پربازدید باعث میشود تا بازدید کننده اطلاعات سایت را از سرور کش (cache server) و بدون نیاز به ارسال درخواست به وب سرورها (Backend Servers) مشاهده کند، به عبارت ساده تر سرعت نمایش سایت به علت عدم نیاز به پردازش درخواست از سمت وب سرورها (webservers) و سرور دیتابیس (Database Server) بسیار بالاتر خواهد بود. همچنین مدت زمان کش شدن سایت ها نیز می تواند متغیر باشد.

 

 

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

با توجه به اطلاعاتی که در معرفی هاست پرسرعت نیترو ارائه شد، اکنون به مزایای این سرویس فوق العاده میپردازیم:

  • بالاترین سرعت بدون نیاز به تغییرات در محتوا، طراحی و کانفیگ سایت ها با استفاده از تکنولوژی کش
  • جلوگیری از حملات توزیع شده بدون نیاز به استفاده از سرویس های جانبی (مانند CloudFlare)
  • کنترل ترافیک با استفاده از لود بالانسر
  • کنترل لود سرورهای backend با استفاده از چندین وب سرور بصورت cluster  شده
  • استفاده از سیستم DNS توزیع شده برای افزایش پاسخ گویی به کاربران
  • عدم نیاز به دانش و مهارت فنی خاص (سرویس کاملا مدیریت شده می باشد)
  • مانیتورینگ همیشگی سرورها از ایران و خارج کشور (با قابلیت ارائه گزارش)
  • بک آپ گیری خودکار و ساده ( فول بک آپ کنترل پنل)
  • کارایی آسان و راحت (سرویس دارای کنترل پنل cPanel می باشد)
  • قابلیت خارج کردن آدرس های خاص از سیستم کش

 

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

 

نصب Varnish Cache بروی Centos

Install Varnish Cache on Centos

سرور را بروز رسانی کنید.

yum -y update

دستور زیر را اجرا کنید.

yum install epel-release

Varnish را با دستور زیر نصب کنید.

yum -y install varnish

سرویس را فعال کنید.

در Centos6

chkconfig varnish on

در Cenots7

systemctl enable varnish

سرویس varnish را start کنید.

service varnish start