ردیس چطور هویتش رو از دست داد؟
خلاصهٔ کاملتر
ردیس در اوایل دهه ۲۰۱۰ وارد دنیای وب شد، درست وقتی که NoSQL داشت اوج میگرفت و هر توسعهدهندهای دنبال ابزارهای سبک و سریع بود. اون موقع ردیس خودش رو «یه memcached بهتر» معرفی میکرد — یه دیکشنری سریع درونحافظهای (in-memory) که سرویسهای مختلف میتونستن بهش وصل بشن. اسمش هم همین رو میگفت: Remote Dictionary Server.
سه ویژگی اصلی ردیس در اون دوره کاملاً با هم هماهنگ بودن: تکنخی بودن (single-threaded)، رویدادمحور بودن (event-driven)، و درونحافظهای بودن. چون همه عملیات روی یه thread انجام میشد، همه چیز اتمیک بود و نیازی به قفلگذاری نبود. پروتکل ارتباطیش (RESP) هم آنقدر ساده بود که میشد توی یه ساعت کدش رو نوشت. این سادگی هوشمندانه بود، نه ضعف.
ساختارهای دادهی اولیهاش هم دقیقاً همون چیزی بود که یه اپ وب نیاز داشت: رشته برای کش، لیست برای صف، هش برای داده ساختاریافته، و مجموعهی مرتبشده (sorted-set) برای لیدربورد و نرخدهی. ساده، هدفمند، بیدردسر.
اما با گذشت زمان، طمع بزرگتر شدن غلبه کرد. ردیس بهجای اینکه همون ابزار تیزوبُرنده بمونه، شروع کرد به اضافه کردن فیچرهای جدید: استریمها، ماژولهای JSON و سریزمانی، کلاستر، سنتینل، Redis-Raft، و پروتکل جدید RESP3 که با فرض اساسی RESP2 (یعنی مدل سادهی درخواست/پاسخ) شکست. نویسنده معتقده RESP3 یه نمونه کلاسیک از «سیستم دوم» (second system effect) هست — وقتی موفقیت اول باعث میشه نسخه بعدی پر از ایدههای بزرگ و نیمهپخته بشه.
از همه اینها عجیبتر، ماجرای تغییر لایسنس بود. شرکت پشت ردیس در سال ۲۰۲۴ لایسنس BSD رو کنار گذاشت و به سمت مدلی رفت که AGPLv3 تنها گزینه OSI-approved اون بود — لایسنسی که برای بیشتر کاربردهای تجاری خیلی محدودکنندهست. این تصمیم با واکنش شدید کاربران روبرو شد. شرکت که اصلاً با نام Garantia Data شروع کرده بود، بعداً تریدمارک ردیس رو به دست آورد و antirez (خالق اصلی ردیس) رو هم جذب کرد تا اعتبار پروژه رو حفظ کنه.
حالا در سال ۲۰۲۶، صفحه اصلی ردیس ادعا میکنه «موتور زمینه real-time برای اپهای هوش مصنوعی» هست — و antirez داره روی یه PR بزرگ برای اضافه کردن نوع داده آرایه کار میکنه، در حالی که ردیس قبلاً لیست، هش، JSON، sorted-set و سریزمانی داره. نویسنده این رو نشانهای میبینه از اینکه پروژه دیگه نمیدونه دقیقاً چیه و چه مشکلی رو حل میکنه.
نکات کلیدی:
- ردیس در اوج موفقیتش یه ابزار ساده، سریع و هدفمند بود
- تکنخی بودن + درونحافظهای + پروتکل ساده = فرمول موفقیت اولیه
- اضافه کردن بیش از حد فیچر، تغییر لایسنس، و تلاش برای دیتابیس شدن هویتش رو مخدوش کرده
- تغییر لایسنس از BSD به AGPL باعث شد فورکهای مستقل مثل Valkey شکل بگیرن
- نویسنده ریشه همه مشکلات رو «بلندپروازی بیش از حد» میدونه




