ما در مورد Redis Cache و روش های مختلف نصب و پیکربندی آن صحبت خواهیم کرد.
دستور جلسه
- بررسی اجمالی
- کش چیست؟
- Redis Cache
- نصب سرور Redis Cache
- Redis Cache Image با استفاده از Docker
بررسی اجمالی
امروزه ذخیره سازی در صنعت نرم افزار بسیار محبوب است زیرا عملکرد و مقیاس پذیری برنامه را بهبود می بخشد. ما از بسیاری از برنامه های کاربردی وب مانند جیمیل و فیس بوک استفاده می کنیم و می بینیم که چقدر پاسخگو هستند و تجربه کاربری بسیار خوبی داریم. کاربران زیادی از اینترنت استفاده می کنند و اگر برنامه ای ترافیک و تقاضای زیادی در شبکه داشته باشد، باید به موارد زیادی توجه کنیم که به ما در بهبود عملکرد و پاسخگویی برنامه کمک می کند. بنابراین، به همین دلیل، راه حل کش وجود دارد و به همین دلیل است که کش وارد تصویر می شود.
کش چیست؟
کش حافظه ای است که برای ذخیره داده های دسترسی مکرر به حافظه موقت استفاده می شود، عملکرد را به شدت بهبود می بخشد و از ضربه های غیرضروری پایگاه داده جلوگیری می کند و داده های پرکاربرد را هر زمان که به آن نیاز داشتیم در بافر ذخیره می کند.
همانطور که در تصویر بالا می بینید دو حالت وجود دارد، یکی بدون استفاده از کش و دیگری با کش. بنابراین در اینجا وقتی از کش استفاده نمی کنیم، در آن صورت، فرض کنید کاربران داده می خواهند، سپس هر بار پایگاه داده را ضربه می زنند و پیچیدگی زمانی را افزایش می دهد و عملکرد را کاهش می دهد در صورتی که داده های ثابتی وجود داشته باشد که کاربران می خواهند و همینطور است برای تمام کاربران. در آن حالتی که از کش استفاده نمی کنیم، هر کدام به پایگاه داده غیر ضروری برای واکشی داده ها ضربه می زنند. از طرف دیگر همانطور که می بینید ما از کش استفاده می کنیم و در این صورت، اگر داده های ثابت و یکسان برای همه کاربران وجود داشته باشد، تنها کاربر اول به پایگاه داده ضربه می زند و داده ها را واکشی می کند و در حافظه کش ذخیره می کند. و سپس دو کاربر دیگر آن را از کش بدون ضربه زدن غیر ضروری به پایگاه داده برای واکشی داده ها استفاده می کنند.
Redis Cache
- Redis یک منبع باز (مجوز BSD) در حافظه ساختار داده است که به عنوان پایگاه داده استفاده می شود.
- اساساً برای ذخیره دادههای پرکاربرد و برخی از دادههای ثابت در حافظه پنهان و استفاده و رزرو آنها بر اساس نیاز کاربر استفاده میشود.
- ساختارهای داده زیادی در Redis وجود دارد که میتوانیم از آنها مانند List، Set، Hashing، Stream و بسیاری دیگر برای ذخیره دادهها استفاده کنیم.