Hướng dẫn cài đặt Valkey: Bản fork mã nguồn mở thay thế Redis hoàn hảo

Database tutorial - IT technology blog
Database tutorial - IT technology blog

Hết thời “xài chùa” Redis: Chuyện gì đang xảy ra?

Nếu là dân làm nghề, chắc hẳn anh em đã nghe về vụ Redis bất ngờ thay đổi giấy phép từ BSD sang BSL (Business Source License). Nói trắng ra, các ông lớn như AWS hay Google không còn được phép lấy Redis về kinh doanh dịch vụ Managed Service mà không chia sẻ lợi nhuận hoặc đóng góp ngược lại.

Biến cố này khiến cộng đồng Open Source dậy sóng. Cảm giác một công cụ “quốc dân” bỗng dưng bị siết chặt khiến nhiều người lo lắng. Đó là lý do Valkey ra đời. Đây không phải dự án mới tinh mà là bản fork từ Redis 7.2.4, được Linux Foundation đứng ra bảo trợ với sự tham gia của dàn “Big Tech” như AWS, Google, Oracle và Ericsson.

Valkey cam kết giữ vững giá trị cốt lõi: Một hệ thống in-memory data store mạnh mẽ, hiệu suất cao và mãi mãi miễn phí.

Valkey có gì khác biệt với các bản fork còn lại?

Thị trường hiện có vài cái tên muốn thay thế Redis. Mình đã dùng thử và có vài đánh giá thực tế như sau:

  • KeyDB: Từng nổi tiếng nhờ khả năng đa luồng (multi-threading). Tuy nhiên, dự án này đang có dấu hiệu chậm lại so với sức nóng của Valkey.
  • Redict: Một bản fork đề cao sự tối giản. Nó giữ nguyên triết lý cũ nhưng cộng đồng hỗ trợ còn khá khiêm tốn.
  • Valkey: Được coi là “người kế nhiệm chính thức” về mặt tinh thần. Với hơn 1.000 commit mới chỉ sau vài tháng ra mắt, Valkey tối ưu tốt cho các dòng CPU hiện đại và tương thích 100% với các Redis client hiện có.

Đánh giá công tâm: Ưu và nhược điểm

Ưu điểm

  • Thay thế tức thì (Drop-in Replacement): Anh em chỉ cần đổi redis-server thành valkey-server. Code Node.js, Python hay PHP của bạn vẫn chạy mượt mà, không cần sửa dù chỉ một dòng.
  • Hiệu năng ấn tượng: Các bài test thực tế cho thấy Valkey có thể đạt throughput cao hơn Redis khoảng 10-20% ở một số tác vụ nhờ cải tiến cách xử lý I/O.
  • Giấy phép BSD-3-Clause: Hoàn toàn tự do. Bạn dùng cho dự án cá nhân hay startup triệu đô đều không lo bị kiện.

Nhược điểm

  • Cái tên còn mới: Khi đề xuất với khách hàng, bạn có thể mất chút thời gian giải thích Valkey là gì.
  • Chuyển dịch hệ sinh thái: Một vài công cụ GUI cũ có thể chưa đổi tên interface sang Valkey, dù kết nối vẫn ổn.

Tại sao mình chọn Valkey cho dự án mới?

Trước đây, Redis là lựa chọn mặc định của mình cho caching layer. Tuy nhiên, sau vụ license, mình đã chuyển dần sang Valkey cho các hệ thống microservices. Lý do rất thực tế: Mình muốn tránh rủi ro “vendor lock-in” và đảm bảo hệ thống luôn sử dụng phần mềm mã nguồn mở thực thụ.

Hướng dẫn cài đặt Valkey nhanh chóng

Dưới đây là hai cách cài đặt phổ biến nhất cho anh em Junior.

Cách 1: Sử dụng Docker (Nhanh và sạch)

Cách này giúp máy tính của bạn luôn sạch sẽ. Chỉ cần một dòng lệnh:

# Chạy container Valkey ở port 6379
docker run --name my-valkey -p 6379:6379 -d valkey/valkey:latest

Sau khi chạy, Valkey sẽ lắng nghe ở port 6379. Bạn có thể dùng Redis Insight hoặc bất kỳ tool quản lý Redis nào để kết nối vào ngay.

Cách 2: Cài đặt trên Ubuntu (VPS)

Nếu bạn muốn cài trực tiếp trên server Ubuntu, hãy thực hiện các bước sau:

# Thêm key và repository chính thức của Valkey
sudo apt install -y curl gnupg
curl -fsSL https://pkg.valkey.io/debian/valkey-archive-keyring.gpg | sudo gpg --dearmor -o /usr/share/keyrings/valkey-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/valkey-archive-keyring.gpg] https://pkg.valkey.io/debian $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/valkey.list

# Cài đặt
sudo apt update && sudo apt install valkey -y

Để kiểm tra Valkey đã chạy chưa, hãy dùng lệnh: sudo systemctl status valkey-server.

Thử nghiệm với valkey-cli

Mọi câu lệnh bạn đã biết đều giữ nguyên. Hãy mở terminal và thử:

valkey-cli

# Thao tác cơ bản
127.0.0.1:6379> set project "Valkey Tutorial"
OK
127.0.0.1:6379> get project
"Valkey Tutorial"

Rõ ràng là không có gì thay đổi về trải nghiệm sử dụng so với Redis truyền thống.

Lưu ý khi migrate từ Redis sang Valkey

Nếu định chuyển một dự án đang chạy từ Redis sang Valkey, bạn nên chú ý 3 điểm:

  1. Cấu hình: Valkey dùng file valkey.conf. Bạn có thể bê nguyên nội dung từ redis.conf sang mà không gặp lỗi.
  2. Dữ liệu: Nó đọc cực tốt các file .rdb.aof cũ. Chỉ cần copy file dump vào thư mục data của Valkey là xong.
  3. Thư viện: Các package như redis-py hay ioredis vẫn nhận diện Valkey là một Redis server tiêu chuẩn.

Valkey đang dần trở thành tiêu chuẩn mới khi các hệ điều hành như Fedora hay Alpine Linux bắt đầu thay thế hoàn toàn Redis. Làm quen với nó ngay lúc này là bước đi thông minh cho sự nghiệp của bạn. Chúc anh em triển khai thành công!

Share: