• Ubuntu
  • Flarum Redis Eklentisi Kurulum ve Ayarları

Redis ön belleği kullanarak Flarum’u daha hızlı kullanabilirsiniz.

Ubuntu 18.04 için Redis Server Kurulumu

SSH ile sunucuda oturum açın. ilk olarak sunucuyu güncelleyip sonra Redis kurulum komutunu girelim.

sudo apt update
sudo apt install redis-server

Şimdi etc/redis/redis.conf dizininde bulunan redis.conf dosyasını açalım ve supervised satırın karşısına systemdyazalım. Yani aşağıdaki gibi görünecek.

. . .

# If you run Redis from upstart or systemd, Redis can interact with your
# supervision tree. Options:
#   supervised no      - no supervision interaction
#   supervised upstart - signal upstart by putting Redis into SIGSTOP mode
#   supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
#   supervised auto    - detect upstart or systemd method based on
#                        UPSTART_JOB or NOTIFY_SOCKET environment variables
# Note: these supervision methods only signal "process is ready."
#       They do not enable continuous liveness pings back to your supervisor.
supervised systemd
. . .

Ayrıca bind 127.0.0.1 ::1 satırının başında # varsa kaldırın.
sudo netstat -lnp | grep redis
Çıktısı;

tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      14222/redis-server  
tcp6       0      0 ::1:6379                :::*                    LISTEN      14222/redis-server  

Bu değişikliğin ardından Redis’i yeniden başlatmak için aşağıdaki komutu girin.
sudo systemctl restart redis.service

Redis Test Etme

İlk olarak Redis’in aktif olup olmadığına bakalım.
sudo systemctl status redis

Çıktısında aşağıdaki gibi aktive yazıyor olmalı.

● redis-server.service - Advanced key-value store
   Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
   **Active**: active (running) since Wed 2018-06-27 18:48:52 UTC; 12s ago
     Docs: http://redis.io/documentation,
           man:redis-server(1)
  Process: 2421 ExecStop=/bin/kill -s TERM $MAINPID (code=exited, status=0/SUCCESS)
  Process: 2424 ExecStart=/usr/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS)
 Main PID: 2445 (redis-server)
    Tasks: 4 (limit: 4704)
   CGroup: /system.slice/redis-server.service
           └─2445 /usr/bin/redis-server 127.0.0.1:6379
. . .

Redis’in düzgün çalıştığını test etmek için,
redis-cli
Şimdi ping komutunu çalıştıralım.

127.0.0.1 > ping
Çıktısı,
PONG

Redis Parolasını Yapılandırma

Redis’e parola koymak isterseniz aşağıdaki komut ile redis.conf dosyasını açalım
sudo nano /etc/redis/redis.conf
Bu dosyada aşağıdaki satırda
# requirepass foobared
# kaldırın ve foobared yerine güçlü bir şifre girin.
Yani son görüntü aşağıdaki gibi olmalı;
requirepass RBOJ9cCNoGCKhlEBwQLHri1g+atWgn4Xn4HwNUbtzoVxAYxkiYBi7aufl4MILv1nxBqR4L6NNzI0X6cE
Değişikliklerin ardından redisi yeniden başlatmak için;
sudo systemctl restart redis.service

Sitede Yapılacak İşlemler

SSH ile sitenizin kurulu olduğu klasöre gelin ve aşağıdaki eklenti kurulum komutunu girin.
composer require bokt/flarum-redis
Eklenti kurulurken bu arada site ana dizininde bulunan extend.php yi açın. extend.php en altta bulunan aşağıdaki satırı kaldırın.

return [
    // Register extenders here to customize your forum!
];

Şimdi aşağıdaki kodları extend.php’de en alta yapıştırın.

return [
    new Bokt\Redis\Extend\EnableRedisCache($redis = [
        'host' => '127.0.0.1',
        'password' => 'redis_şifresnizi_yazın',
        'port' => 6379,
        'database' => 1,
    ]),
    new Bokt\Redis\Extend\EnableRedisQueue($redis),
];

Şimdi kurulan eklentiyi aktif edin ve sitenin kurulu olduğu dizinde php flarum queue:work komutunu çalıştırın.
İşlem tamamdır.

Redis Eklentisi şu an FlarumTR’de kullanılıyor. Test sonuçları aşağıda.

    mekici Sunucuyu restart ettikten sonra herhangi bir komut yazmaya gerek var mı hocam?

      Alshain sudo systemctl status redis çalıştır hocam aktive diyorsa gerek yok. Aktif değilse aktif etmek lazım

        mekici 2.0.0 ı kurduktan sonra Sayfa yüklenmeye çalışırken bir hata oluştu. mesajı alıyorum. Bilginiz var mı?

          durpoy Hocam 2.0 Recache eklentisine geldi. ReCache’den bahsediyorsan, bu konuda bahsettiğim Redis eklentisini kaldır ve extend.php’yi eski haline getir. tüm önbellekleri temizle ve eklentiyi aktif et. Ben ReCache 2.0 kurdum şu an sorunsuz çalışıyor. Gördüğüm kadarıyla.

            mekici burayı aktif edemiyorum. Kayıt ettikten sonra tick kapanıyor. Eklenti yazarına yazdım. Log var mı dedi. Yok da yok. Kendin çözmelisin diyor.

              mekici Bu sorunu recache konusuna sizde yazar mısınız?

                durpoy Eklenti yazarını sorunu düzelteceğim dedi. Bekleyelim en iyisi.

                  durpoy İnşallah bakalım. Discord’tan mı yazdı bunu.

                    mekici evet. Benden log istedi de. Log da oluşmuyor. 2.0.0 için dedim. Beta surumu çıkarmış bide hocam. Categories e destek getirdim. 2.0.2 onu denemedim ben ama.

                      mekici 2.0.3 geldi. kurdum ama bende sorun aynı devam ediyor. bir de siz dener misiniz?

                      mekici sitemi taşıdım ve recache eklentisi ile ilgili hata alıyorum. Sitem açılmıyor şimdide. Flarum’u baştan kursam eklentileri de aynı şekilde site açılır mı?

                        durpoy Evet hocam açılır. Bende de oldu. En son kaldırdım komple recache eklentisini. Şimdi sadece Redis kurulu.

                          mekici hocam yardım edebilir misiniz? discord gelip.

                          mekici sıfırdan kurduğumuzda önceki ayarlar mysql den geri geliyor mu peki?

                            durpoy Evet hocam tüm ayarların geri gelir. Sadece eklentileri tek tek yeniden kuracaksın. Birde sunucu blogundan site root dosyasını yeni dosyanın yolu ile değişmen lazım. Yada var olan site dosyalarının hepsini sil. Aynı klasöre tekrar kur.

                              mekici sunucu blogu ne hocam, nginx ayarını diyorsunuz galiba doğru mu?

                                Hadımköy Kombi Servisi Minecraft Türk Sunucular