6 điểm bởi GN⁺ 2024-03-29 | 3 bình luận | Chia sẻ qua WhatsApp
  • Vào ngày 21 tháng 3 năm 2024, Redis Ltd. thông báo rằng dự án "kho dữ liệu trong bộ nhớ" Redis sẽ được phát hành theo giấy phép không tự do, source-available kể từ Redis 7.4
  • Tin này gây khó chịu nhưng hoàn toàn không bất ngờ, và điểm đáng chú ý là có nhiều lựa chọn có thể dùng để thay thế Redis
  • Những người dùng muốn tiếp tục sử dụng phần mềm tự do có thể chọn trong ít nhất bốn phương án, bao gồm KeyDB là một fork đã có từ trước và dự án Valkey vừa được Linux Foundation công bố

Lịch sử ngắn gọn của Redis

  • Redis là dự án do Salvatore Sanfilippo (biệt danh "antirez") khởi xướng để phục vụ ứng dụng phân tích log thời gian thực LLOOGG, vốn có những yêu cầu mà MySQL không đáp ứng được
  • Nó được thiết kế như một cơ sở dữ liệu dạng từ điển đơn giản thay vì cơ sở dữ liệu quan hệ, và tên gọi là viết tắt của "remote dictionary server"
  • Redis nhanh chóng trở nên phổ biến như một phần của phong trào NoSQL, và vào năm 2010 ông được VMware tuyển dụng để phát triển nó
  • Redis trở nên phổ biến nhờ các khách hàng như Twitter và Pinterest, bắt đầu được đưa vào các bản phân phối Linux, và đến năm 2013 đã được thêm vào dịch vụ ElastiCache của AWS

Đám mây đối đầu mã nguồn mở

  • Những người ủng hộ các giấy phép hạn chế sử dụng như SSPL và RSAL của Redis cố gắng trình bày đây chỉ là cuộc chiến giữa các nhà cung cấp đám mây khổng lồ như AWS và mã nguồn mở
  • Xem danh sách những người đóng góp cho Redis có thể thấy rằng ngoài công ty Redis còn có nhiều doanh nghiệp khác cũng đang đóng góp

Thay đổi mô hình phân phối

  • Redis là một công ty được đầu tư mạo hiểm, và có vẻ đã tính toán để rời xa mã nguồn mở nhằm tạo ra nhiều doanh thu hơn
  • Nhìn vào trường hợp của MongoDB, sau khi chuyển sang SSPL công ty này vẫn tiếp tục tăng trưởng, và nhiều doanh nghiệp thích trả tiền để sử dụng hơn là tự lưu trữ dịch vụ
Quảng cáo

Các fork và lựa chọn thay thế

  • Chỉ vài ngày sau khi Redis thay đổi giấy phép, một fork trực tiếp mang tên Valkey đã xuất hiện, với sự hậu thuẫn của AWS, Google Cloud, Oracle, Ericsson và Snap
  • KeyDB là một fork được tạo ra vào năm 2019 vì lý do kỹ thuật, và sau khi được Snap mua lại, toàn bộ codebase đã trở thành mã nguồn mở hoàn toàn theo giấy phép BSD 3-clause
  • Drew DeVault, nhà sáng lập SourceHut, đã tạo ra một fork tên là Redict sử dụng LGPLv3
  • Garnet của Microsoft là một kho lưu trữ cache từ xa tương thích với Redis, được phát hành theo giấy phép MIT

Cuộc cạnh tranh của các lựa chọn thay thế

  • Các bản phân phối Linux đang đối mặt với vấn đề phải tìm phần mềm thay thế Redis.
  • Các cộng đồng như Fedora, openSUSE và Debian đang cân nhắc KeyDB, Redict, Valkey và các lựa chọn khác như những phương án thay thế Redis.

Con đường phía trước

  • Còn quá sớm để dự đoán liệu một hay nhiều fork có đạt được lực kéo đáng kể hay không, nhưng Valkey nhiều khả năng sẽ trở thành một lựa chọn thay thế đáng tin cậy

3 bình luận

 
iolothebard 2024-03-30

Ngay từ đầu, redis cũng từng là một lựa chọn thay thế cho memcached.
Nhưng tôi chưa từng thấy việc một công nghệ thay thế được quyết định bằng kiểu chiến dịch(?) như thế này.
Only time will tell.

 
GN⁺ 2024-03-29
Ý kiến trên Hacker News
  • Redis Community Edition vẫn có thể tiếp tục được օգտագործ miễn phí, sẽ được hỗ trợ, bảo trì và cải tiến.

    • Các nhà phát triển không cần thay thế Redis trong ứng dụng SaaS và phần mềm dựa trên web.
    • Mục đích là để ngăn AWS cung cấp Redis như một dịch vụ mà không trả thù lao cho các nhà phát triển Redis.
  • Neal Gompa đã bắt đầu thảo luận về thay đổi giấy phép trên danh sách thư phát triển của Fedora và chỉ ra sự cần thiết phải loại bỏ Redis khỏi Fedora.

    • Gompa cũng nêu vấn đề này trên danh sách thảo luận Factory của openSUSE.
    • Sau khi Docker dần bị loại bỏ, nhiều bản phân phối đã chọn Podman làm giải pháp thay thế Docker. Có vẻ tình huống tương tự cũng sẽ diễn ra với Redis.
  • Tôi mới biết rằng Binbin Wang, committer của Apache Kvrocks (một lựa chọn thay thế Redis dựa trên Flash), đã đóng góp gần 25% số commit cho các phiên bản Redis mới.

  • Lý do giấy phép AGPL ngày càng phổ biến là vì tất cả mọi người trừ chủ sở hữu bản quyền đều phải tuân theo các quy tắc rất nghiêm ngặt, nhưng phần mềm cốt lõi vẫn là mã nguồn mở nên cộng đồng vẫn được hưởng lợi.

    • Đặc biệt, giấy phép BSD có vẻ là một cách rất tệ để vận hành doanh nghiệp.
  • AWS đã fork ElasticSearch thành DBaaS "OpenSearch". Vì điều này, ở công ty cũ tôi từng bị kẹt ở một phiên bản cụ thể của thư viện NEST .NET và không thể dùng các tính năng mới. Xét theo tiến bộ công nghệ thì có vẻ đây là một hướng đi sai lầm.

  • Dùng giấy phép MIT và tạo doanh thu thông qua hỗ trợ là một cách giải quyết đơn giản không chỉ cho vấn đề này mà còn cho các vấn đề tiềm ẩn khác.

  • Thật thú vị khi khoảng 40% số commit cho Reddit đến từ các công ty Trung Quốc (Tencent 24.8%, Alibaba 6.8%, Huawei 5.2%, Bytedance 2%).

  • Ở thời điểm hiện tại, giấy phép có bản quyền trông có lợi hơn. Nếu không có gì đảm bảo rằng mọi bản phát hành trong tương lai sẽ áp dụng cùng một giấy phép, thì giá trị của một giấy phép tự do hơn và thân thiện với doanh nghiệp hơn là gì? Điều này giống một chính sách nhử mồi rồi đổi ý.

  • Redis trông giống một con ngựa thành Troy đối với các nhà phát triển. Ban đầu nó có vẻ là một cơ sở dữ liệu key-value đơn giản, nhưng cũng có thể dùng làm cache, và việc cache mọi thứ nghe có vẻ rất ngầu. Tuy nhiên, điều đó trái ngược với nguyên tắc Unix cũ rằng mỗi chương trình nên tập trung vào một việc mà nó làm tốt. Sau 10 năm, bạn phải tải whitepaper enterprise của Redis để đưa ra quyết định cache đúng đắn.

    • Điều này xuất phát từ kinh nghiệm làm việc trong một dự án dùng Redis trên các cổng khác nhau cho vai trò cơ sở dữ liệu và cache. Hầu hết các nhóm phát triển không đọc tài liệu vì Redis "đơn giản và hoạt động tốt", và đã phát sinh nhiều vấn đề, nhưng ở các startup đang vật lộn để tồn tại thì không có thời gian để dọn dẹp chuyện đó.
  • Tôi đồng ý với quan điểm của Andrew Kelley: nên đổi tên dự án Redis thành Redict, và coi dự án hiện đang được gọi là "Redis" như một bản fork thương mại kỳ quặc của Redict.