TL;DR
- Redis یک پلت فرم پایگاه داده درون حافظه ساده و در عین حال قدرتمند با موارد استفاده از.
- مدیریت جلسه،.
- صفها و pub/sub گرفته تا کش همهمنظوره است.
چه اتفاقی افتاد
Redis یک پلت فرم پایگاه داده درون حافظه ساده و در عین حال قدرتمند با موارد استفاده از. مدیریت جلسه،.
صفها و pub/sub گرفته تا کش همهمنظوره است. Redis Enterprise با ماندگاری و قابلیتهای تکثیر درون حافظهاش، بهعنوان یک دیتا استور اولیه نیز استفاده میشود.
بهعنوان یک مهندس نرمافزار، من اغلب از Redis برای غلبه بر مشکلات منحصربهفرد استفاده میکنم. در یک پروژه،.
مورد استفاده ما ساده بود:. من میخواستم محتویات یک پارتیشن سیستم فایل را با ساختاری ثابت و کاملاً تعریف شده تکرار کنم:.
در ریشه سیستم فایل ما مجموعهای ثابت از فهرستها داشتیم که هر کدام بیش از یک میلیون فایل. داشت.
راهحل قبلی ما دو فرآیند را به صورت موازی،. 24/7 برای شناسایی فایلهای اصلاح شده اجرا میکرد.
اولین فرآیند تمام محتویات فایل را اسکن کرد و محتوای تغییر یافته را از زمان تکرار قبلی شناسایی. کرد.
یک کار هر 24 ساعت یک بار برای تکرار فایلهای تغییر یافته انجام میشود. فرآیند دوم تمام فایلهایی را که ایندکس میشوند در راهحل قبلی ما از پایگاه داده.
SQL برای ذخیره ابرداده فایل (مانند نام،. اندازه،.
مجوزها،. مسیر و غیره) و تمام اطلاعات مربوط به فایلهای اصلاح شده استفاده کردیم.
کار تکرار برنامهریزیشده،. از پایگاه داده درخواست کرد تا فهرست فایلهای اصلاحشده را بکشد،.
سپس محتوا را روی یک سرور راه دور تکرار کرد. پس از تکرار،.
پایگاه داده SQL را بهروزرسانی کرد و فایلها را بهعنوان «کپیشده» علامتگذاری کرد،. پس از آن فرآیند نمایهسازی،.
فهرست علامتگذاریشده را برای فهرستبندی محتوای فایل انتخاب کرد. Redis to the Rescue طراحی قبلی ما معایب عمدهای داشت:.
ما مجبور بودیم کد زیادی برای ذخیره/بازیابی/تغییر دادهها در SQL بنویسیم،. و همانطور که پایگاه داده مکانیزمیرا ایجاد میکرد.
با گسترده شدن هزینه عملیاتی، ما شروع به جستجوی راههایی برای رهایی از این معماری کردیم. در آن زمان بود که Redis را پیدا کردیم.
Redis فورا بسیاری از موارد را حل کرد مشکلات ما در راهحل جدید خود،. از ویژگی Redis pub/sub برای اطلاع دادن به فرآیندهای مختلف خود در مورد شناساییهای جدید استفاده کردیم.
فرآیند اسکن جزئیات فایل(های) تغییر یافته را در یک کانال Redis منتشر کرد. فرآیند تکثیر در آن کانال مشترک شد و به محض اطلاع فایل را کپی کرد.
سپس فرآیند تکثیر فرآیند نمایه سازی را (از طریق کانال دیگر Redis pub/sub) مطلع کرد. این سیستم نیاز به اجرای یک کار در روز را از بین میبرد و در عوض تکرار.
را بهعنوان یک فرآیند مداوم اجرا میکرد. ما همچنین از دردسر تمیز کردن پایگاه داده SQL نجات پیدا کردیم!
قبل از در نظر گرفتن مدل pub/sub Redis، RabbitMQ، Kafka و غیره را نیز در نظر گرفتیم. هیچ کدام به اندازه Redis همه کاره و آسان برای استفاده نبودند.
همانطور که Redis را پذیرفتیم، بسیاری از مزایای دیگر آن را کشف کردیم. ما شروع به استفاده از ساختارهای داده داخلی کردیم مانند لیستها،.
هشها و مجموعهها،. برای انجام تجزیه و تحلیل.
بهعنوان مثال،. میخواستیم بدانیم تعداد تغییرات فایلها و دایرکتوریها چقدر است و کدام برنامهها این تغییرات را انجام دادهاند.
ما از Redis و ساختارهای داده آن برای جمع آوری این اطلاعات استفاده کردیم. سپس آن را به فرآیند نمایه سازی منتقل کردیم و متا دادههای نمایه شده را با داده.
های تحلیلی غنی کردیم. شروع با Redis بسیار آسان است.
میتوانید در Redis Cloud به صورت رایگان در آدرس زیر ثبتنام کنید: /redis-enterprise-cloud-free-30-mb-plan.
چرا مهم است
اهمیت این خبر در این است که روی استفاده واقعی از AI و تصمیمگیری سازمانی اثر میگذارد.
منبع
لینک منبع اصلی در کارت و صفحه مقاله نمایش داده میشود.
