f382

آموزش Redis در Asp.net Core با Docker

کدسل برنامه نویسی وب Asp.Net Core

لینک کوتاه https://codecell.ir/course/f382
400٬000تومان
مدرس: سهراب قیصری
تعداد ویدیوها: 9
مدت زمان دوره: 04:43:21
وضعیت دوره: به اتمام رسیده
آخرین بروزرسانی: 1402/03/02
به اشتراک گذاری
نظرات
0
دیگر آموزش های مدرس:
آموزش استفاده از Redis در Asp.net Core  با داکر

Redis چیست؟

Redis که مخفف Remote Dictionary Server است یک منبع ذخیره Open source و in-memory یا درون حافظه ای به صورت key-value است که توسط میلیون ها توسعه دهنده به عنوان پایگاه داده، حافظه کش توزیع شده، موتور استریم و Message Broker استفاده می شود.

پایگاه داده in-memory  یا درون حافظه ای چیست؟

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

Message Broker چیست؟

Message Broker نرم افزاری است که برنامه ها، سیستم ها و سرویس ها را قادر می سازد با یکدیگر ارتباط برقرار کرده و اطلاعات را تبادل کنند. مسیج بروکر این کار را با ترجمه پیام ها بین پروتکل های پیام رسانی رسمی انجام می دهد.

پایگاه داده key-value چیست؟

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

Redis ساختارهای داده‌ ای مانند رشته ها، هش ‌ها، لیست ها، set ها،bitmap ها، هایپرلاگ ها، ایندکس های مکانی و استریم ها را فراهم می ‌کند. Redis دارای تکثیر داخلی، اسکریپت ‌نویسی Lua، تراکنش ‌ها و سطوح مختلف پایداری روی دیسک است و دسترسی بالایی را از طریق Redis Sentinel و پارتیشن‌ بندی خودکار با Redis Cluster فراهم می ‌کند.

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

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

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

انواع persistence یا ماندگاری یا در Redis

  • RDB (Redis Database): ماندگاری RDB اسنپ شات های لحظه ‌ای از مجموعه داده‌ های شما را در فواصل زمانی مشخص انجام می‌دهد.
  • AOF (Append Only File): ماندگاری AOF هر عملیات نوشتن دریافت شده توسط سرور را ثبت می کند، که در راه اندازی سرور دوباره اجرا می شود و مجموعه داده اصلی را بازسازی می کند. دستورات با استفاده از همان فرمت خود پروتکل Redis و به روش append-only ثبت می شوند. Redis می‌تواند لاگ ها را زمانی که خیلی بزرگ می شوند در پس ‌زمینه بازنویسی کند.
  • بدون ماندگاری: در صورت تمایل، اگر می ‌خواهید تا زمانی که سرور در حال اجرا است، داده‌های شما وجود داشته باشند، می ‌توانید ماندگاری را به طور کامل غیرفعال کنید.
  • RDB + AOF: امکان ترکیب هر دو AOF و RDB در یک نمونه وجود دارد. توجه داشته باشید که در این مورد، هنگامی که Redis راه اندازی مجدد می شود، از فایل AOF برای بازسازی مجموعه داده اصلی استفاده می شود زیرا تضمین می شود که کامل ترین است.

سرفصل های دوره آموزش Redis در Asp.net Core 7 با داکر:

  • آموزش راه اندازی Redis در داکر(Docker)
  • آموزش تنظیمات Redis Container در داکر
  • آموزش تنظیمات ذخیره سازی با روش RDB در Redis Container در داکر
  • آموزش تنظیمات ذخیره سازی با روش AOF در Redis Container در داکر
  • آموزش استفاده از Redis-cli در Docker
  • ایجاد یک پروژه Asp Core 6 و اتصال آن به Redis
  • بررسی انواع  Data Type های اصلی Redis و کار با آن ها در Asp.net Core
  • آموزش استفاده از Pub/Sub و ایجاد Message Broker در Redis و استفاده از آن در Asp.net Core
  • نحوه ایجاد و تنظیم فایل docker-copmose.yml و داکرایز کردن پروژه
     
فهرست ویدیوها
مدت زمان دوره: 04:43:21
01

آموزش استفاده از Redis در داکر، ایجاد کانتینر ردیس و استفاده از redis-cli

00:36:50
02

آموزش ایجاد Volume و تنظیمات ذخیره سازی Redis با روش های RDB و AOF در داکر

00:21:48
03

آموزش استفاده از String ها، List ها، Set ها، Sorted Set ها و Hashset ها در Redis

00:54:15
04

آموزش افزدون Redis به Asp.net Core و کار با Redis string

00:41:35
05

آموزش استفاده Redis List در Asp.net Core

00:31:05
06

آموزش استفاده از Redis Set در Asp.net Core

00:20:35
07

آموزش استفاده از Redis HashSet در Asp.net Core

00:27:14
08

آموزش Pub/Sub از طریق Redis در Asp.net Core

00:26:05
09

آموزش استفاده از docker-compose و داکرایز کردن پروژه

00:23:54

پرسش های متداول

Redis یک ساختار داده منبع باز و in-memory یا درون حافظه ای و به صورت key-value است که می تواند به عنوان پایگاه داده، حافظه پنهان یا مسیج بروکر استفاده شود. Redis یک پایگاه داده NoSQL است.

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

Redis یک پایگاه key-value با کارایی بالا است و به یک عنصر ضروری در برنامه های کاربردی Big Data تبدیل شده است. Redis به عنوان یک پایگاه داده NoSQL به شرکت ها کمک می کند تا با ایجاد مقیاس پذیری پایگاه داده راحت تر و مقرون به صرفه تر از داده ها استفاده کنند.

مقالات آموزش برنامه نویسی مدرس

Response Caching در ASP.NET Core

Response Caching یک مکانیزم ذخیره سازی پاسخ سرور توسط مرورگر یا سایر کلاینت ها است. با استفاده از Response Caching در Asp.net Core می توانیم عملکرد و کارایی سیستم را بالا ببریم.

669 0 1402/10/22

Output Caching در ASP.NET Core 8.0

Output Caching یک ویژگی جدید است که از زمان .NET 7 معرفی شده است. این ویژگی به ما این امکان را می دهد که به راحتی یک کش پاسخ برای Web API خود بدون پیاده سازی IMemoryCache راه اندازی کنیم.

723 0 1402/10/14

الگوی طراحی زنجیره مسئولیت در سی شارپ

الگوی زنجیره مسئولیت یا Chain of Responsibility Design Pattern یک الگوی طراحی رفتاری(behavioral design pattern) است که اجازه می‌دهد یک درخواست در امتداد زنجیره‌ای از کنترل‌کننده‌های بالقوه ارسال شود تا زمانی که درخواست مناسب برای پردازش آن را پیدا کند.

685 2 1402/10/01

ViewComponent در ASP.NET Core

در ASP.NET Core با استفاده از ViewComponent ها می توان اجزای ماژولار، قابل استفاده مجدد، قابل نگهداری و مقیاس پذیر برای ساخت برنامه های کاربردی وب ایجاد کرد. در این مقاله به نحوه ایجاد و فراخوانی ViewComponent در Asp.net core پرداخته ایم.

1٬431 2 1402/05/15

تطبیق الگو در NET 7: ساده سازی تجزیه و تحلیل داده ها

تطبیق الگو یا Pattern Matching در net7 یک تکنیک قدرتمند برای تجزیه و تحلیل و دستکاری داده ها بر اساس ساختار آن ها است. تطبیق الگو یا Pattern Matching به توسعه دهندگان اجازه می دهد تا مقادیر را با یک الگوی خاص مطابقت دهند و اقدامات مربوطه را انجام دهند.

880 1 1402/04/05

تزریق وابستگی در ASP.NET Core

تزریق وابستگی (DI) یک الگوی طراحی نرم افزاری است که امکان ایجاد برنامه های کاربردی و ماژولار را فراهم می کند.. در .NET Core تزریق وابستگی یا Dependency injection یک ویژگی مهم است که می تواند برای ساده سازی توسعه برنامه، بهبود تست پذیری و کاهش پیچیدگی کد مورد استفاده قرار گیرد.

1٬964 1 1402/02/04

ضروری ترین کتابخانه های NuGet برای ASP.NET Core

در این مقاله مهمترین،ضروری ترین و پرکاربردترین کتابخانه های NuGet که هر توسعه‌ دهنده‌ ASP.NET Core باید برای توسعه بهتر و کاهش زمان مورد نیاز برای برنامه ‌های خود از آن استفاده کنند را مورد بررسی قرار داده ایم.

1٬517 1 1401/12/29

الگوی طراحی Factory در سی شارپ

الگوهای طراحی یکی از مهمترین جنبه های طراحی و معماری نرم افزار است. Factory Method یک الگوی طراحی ایجادی است که یک رابط برای ایجاد اشیاء در یک سوپر کلاس فراهم می‌کند. ما در این مقاله الگوی Factory Method Design در سی شارپ را بررسی می کنیم.

1٬642 1 1401/10/28

مقایسه List و Array در سی شارپ

آرایه و لیست در سی شارپ هر دو به عنوان مجموعه ای از مقادیر عمل می کنند، اما در نحوه ذخیره محتوای خود در حافظه و نحوه دسترسی به آنها متفاوت هستند. در این مقاله Benchmark و کارایی List<T> با سایز داینامیک، List<T> با سایز ثابت و Array ها را بررسی می کنیم.

2٬221 2 1401/09/01

LinkedList در سی شارپ

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

2٬046 0 1401/08/13

Garbage Collection در دات نت

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

2٬838 5 1401/03/30

.NET Core چیست؟

.Net (با تلفظ «دات نت») یک چارچوب نرم افزاری کامپیوتری مدیریت شده رایگان و منبع باز برای سیستم عامل های ویندوز، لینوکس و macOS است. این پروژه در درجه اول توسط کارمندان مایکروسافت از طریق دات نت توسعه یافته و تحت مجوز MIT منتشر شده است.

2٬587 2 1401/03/16

پشته(Stack) در سی شارپ

پشته یا Stack در سی شارپ یک نوع خطی از ساختار داده است که قادر به ذخیره اشیاء است. پشته یک ساختار داده LIFO یا Last-In-First-Out است، به این معنی که آخرین موردی که در پشته قرار می گیرد اولین موردی است که از پشته خارج می شود.

2٬187 0 1401/03/09

صف (Queue) در سی شارپ

صف (Queue) در سی شارپ یک نوع خطی از ساختار داده است که قادر به ذخیره اشیاء است. Queue یک ساختار داده first-in-first-out یا FIFO است که به این معنی است که اولین مورد اضافه شده به صف اولین موردی است که حذف می شود.

2٬162 0 1401/02/30

تفاوت Hashtable و Dictionary در سی شارپ

در سی شارپ از Hashtable و Dictionary می توان برای ذخیره مجموعه‌ای از داده‌ها، شبیه به List معمولی استفاده کرد. با این تفاوت که Hashtable و Dictionary عناصر را به عنوان جفت Key/Value ذخیره می کنند.در این مقاله به تفاوت های Hashtable و Dictionary پرداخته شده است.

1٬843 1 1401/02/23

Dictionary در سی شارپ

در سی شارپ از دیکشنری ها (Dictionary) می‌توان برای ذخیره مجموعه‌ای از داده‌ها، شبیه به List معمولی استفاده کرد. تفاوت اصلی این است که یک Dictionary می تواند عناصر را به عنوان جفت Key/Value ذخیره کند.Key ها باید منحصر به فرد و نمی توانند null باشند. Value ها می توانند تکراری یا null باشند.

2٬249 3 1401/02/17

Hashtable در سی شارپ

از Hashtable می‌توان برای ذخیره مجموعه‌ای از داده‌ها، شبیه به List معمولی استفاده کرد. تفاوت اصلی این است که یک Hashtable می تواند عناصر را به عنوان جفت Key/Value به عنوان جایگزینی برای استفاده از Index ذخیره کند.

1٬721 5 1401/02/14

Redirect درخواست (ریدایرکت) در asp.net core

در برنامه های ASP.NET Core برای تغییر مسیر(ریدایرکت) و Redirect به یک URL خاص روش های مختلفی وجود دارد. در این مقاله با این تکنیک ها و کدهای مورد نیاز برای تغییر مسیر یک درخواست در ASP.NET Core آشنا می شویم.

2٬562 5 1401/02/12

تبدیل enum به لیست انتخابی در asp.net core

در این آموزش ما بوسیله Reflection ها در سی شارپ و asp.net core یک enum را به لیست انتخابی یا SelectListItem تبدیل خواهیم کرد و بوسیله تگ select در بوت استرپ 5 نمایش می دهیم.

1٬753 3 1401/02/03

نحوه ارسال ایمیل در asp و c#

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

2٬582 5 1401/02/03
نظرات

برای ثبت نظر باید در سایت ثبت نام یا ورود نمایید