Arch Linux Üzerinde Valkey (Redis Alternatifi) Kurulumu

625 kelime
3 dakika
Seviye 6.64

Giriş: Redis mi, Valkey mi? 🤔

Son zamanlarda Redis Inc. lisans değişikliği yaptı ve bu da açık kaynak dünyasında tartışmalara yol açtı. Topluluk da boş durmadı ve Valkey adında özgür, topluluk odaklı bir fork oluşturdu.

Valkey aslında Redis’in birebir alternatifi diyebileceğimiz bir yazılım:

  • Bellek içi veritabanı 🧠
  • Dağıtık cache sistemi
  • Mesaj kuyruğu & broker 📬

Eğer daha önce Redis kullandıysanız, Valkey’i hiç zorlanmadan kullanabilirsiniz. Bu yazıda Arch Linux üzerinde Valkey kurulumu, yapılandırması ve yaygın sorunların çözümünü adım adım anlatacağım.
Arch Linux Valkey Kurulumu


1. Valkey Kurulumu 🚀

Arch Linux kullanıyorsanız işiniz çok kolay çünkü Valkey resmi depolarda mevcut.

Adım 1: Paket kurulumu

Bash
sudo pacman -S valkey

Adım 2: Servisi başlatmak ve aktifleştirmek

Bash
sudo systemctl start valkey.service
sudo systemctl enable valkey.service

Durumu kontrol etmek için:

Bash
systemctl status valkey.service

Yeşil bir active (running) görüyorsanız, Valkey başarıyla çalışıyor demektir. 🎉

Bash
[friday13@baba ~]$ systemctl status valkey.service                                                                                                                                                                                           valkey.service - Advanced key-value store
     Loaded: loaded (/usr/lib/systemd/system/valkey.service; enabled; preset: disabled)
     Active: active (running) since Fri 2025-08-15 15:49:17 +03; 1 day 15h ago
 Invocation: c53b3b13df024fc8ab004eaf48d3754a
   Main PID: 220586 (valkey-server)
     Status: "Ready to accept connections"
      Tasks: 6 (limit: 18627)
     Memory: 4.3M (peak: 7.5M, swap: 1.9M, swap peak: 2.2M)
        CPU: 2min 52.383s
     CGroup: /system.slice/valkey.service
             └─220586 "/usr/bin/valkey-server 127.0.0.1:6379"

Ağu 17 06:45:05 baba valkey-server[220586]: 220586:M 17 Aug 2025 06:45:05.283 * 100 changes in 300 seconds. Saving...
Ağu 17 06:45:05 baba valkey-server[220586]: 220586:M 17 Aug 2025 06:45:05.283 * Background saving started by pid 1097543
Ağu 17 06:45:05 baba valkey-server[1097543]: 1097543:C 17 Aug 2025 06:45:05.288 * DB saved on disk
Ağu 17 06:45:05 baba valkey-server[1097543]: 1097543:C 17 Aug 2025 06:45:05.288 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
Ağu 17 06:45:05 baba valkey-server[220586]: 220586:M 17 Aug 2025 06:45:05.384 * Background saving terminated with success
Ağu 17 07:20:02 baba valkey-server[220586]: 220586:M 17 Aug 2025 07:20:02.485 * 100 changes in 300 seconds. Saving...
Ağu 17 07:20:02 baba valkey-server[220586]: 220586:M 17 Aug 2025 07:20:02.485 * Background saving started by pid 1107674
Ağu 17 07:20:02 baba valkey-server[1107674]: 1107674:C 17 Aug 2025 07:20:02.488 * DB saved on disk
Ağu 17 07:20:02 baba valkey-server[1107674]: 1107674:C 17 Aug 2025 07:20:02.488 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
Ağu 17 07:20:02 baba valkey-server[220586]: 220586:M 17 Aug 2025 07:20:02.585 * Background saving terminated with success

2. Valkey İstemcileri 🔌

Valkey’i kullanacak uygulamalar için istemci kütüphaneleri gerekir. Öne çıkanlar:

  • Python: python-redis
  • PHP: php-redis
  • C: hiredis

Örneğin Python için:

Bash
sudo pacman -S python-redis

CLI üzerinden test:

Bash
valkey-cli
127.0.0.1:6379> set foo "merhaba"
OK
127.0.0.1:6379> get foo
"merhaba"

3. Valkey Yapılandırması ⚙️

Ayar dosyası:

Text Only
/etc/valkey/valkey.conf

Port ayarı

Text Only
port 6379

TCP bağlantısını kapatmak için:

Text Only
port 0

Unix Socket ile Çalıştırmak 🔒

Text Only
unixsocket /run/valkey/valkey.sock
unixsocketperm 770

Sonrasında kullanıcı ekleme:

Bash
sudo usermod -aG valkey http
sudo usermod -aG valkey git

Servisi yeniden başlatın:

Bash
sudo systemctl restart valkey.service

4. Yaygın Sorunlar ve Çözümleri 🛠️

Transparent Huge Pages (THP) Uyarısı

Uyarı

THP açık kalırsa Valkey performans sorunlarına yol açabilir.

Bash
sudo nano /etc/tmpfiles.d/valkey.conf

İçerik:

Text Only
w /sys/kernel/mm/transparent_hugepage/enabled - - - - never
w /sys/kernel/mm/transparent_hugepage/defrag - - - - never

TCP Backlog Hatası

Bash
sudo nano /etc/sysctl.d/99-sysctl.conf

Ekle:

Text Only
net.core.somaxconn=512

Uygula:

Bash
sudo sysctl --system

Overcommit Memory Uyarısı

Text Only
vm.overcommit_memory=1

Aynı şekilde 99-sysctl.conf içine ekleyebilirsiniz.


5. Kullanışlı İpuçları ✨

5.1 Otomatik Tamamlama (Zsh)

Bash
compdef '_dispatch redis-cli_completion redis-cli' valkey-cli

Bunu ~/.zshrc dosyanıza ekleyin.

Eğer zsh nedir bilmiyorsanız şu yazıya göz atabilirsiniz: Oh My ZSH Kurulumu (Tema ve Eklentiler Dahil)


5.2 CLI’de Temel Komutlar

Bash
set key "value"   # Değer kaydet
get key           # Değeri al
del key           # Anahtarı sil
keys *            # Tüm anahtarları listele
flushall          # Tüm verileri sil

6. Gerçek Hayatta Kullanım Senaryoları 💡

  • Cache sistemi: Veritabanı sorgularını hızlandırma.
  • Oturum yönetimi: Kullanıcı oturumlarını tutma.
  • Mesaj kuyruğu: Mikro servisler arasında iletişim.
  • Sayaçlar: Ziyaretçi, beğeni vb. gerçek zamanlı sayaçlar.

Sonuç 🎯

Bu yazıda Arch Linux üzerinde Valkey (Redis alternatifi) kurulumu, yapılandırması, istemci kütüphaneleri ve sık karşılaşılan sorunların çözümünü adım adım öğrendiniz.

Artık Valkey’i hem geliştirme ortamınızda hem de üretim sunucularınızda gönül rahatlığıyla kullanabilirsiniz. 💚


Fediverse Yorumları

Mastodon'da Görüntüle