Jangan Pernah Membiarkan Redis Terbuka

Sebenarnya sudah ada feeling ketika membuat tulisan Redis Bikin Panik ini, dan kemarin sudah tidak panik lagi, tapi pasrah… Pasrah karena server kena hack, diduga kuat karena redis yang dibiarkan blong2an tanpa auth. Seberapa parah? Data diangkut semua sama si hacker, nyaris tidak bersisa. Dan karena hampir tidak pernah backup, ya akhirnya pasrah aja, mulai dari awal.

Kalau ada di antara pembaca memanfaatkan redis sebagai salah satu tools, tolong banget untuk mengaktifkan fitur auth-nya.

Tentang Caching di Django

Sedikit cerita tentang cache backend, saya menggunakan redis sebagai default cache backend di django, ini juga berarti redis saya gunakan untuk:

  • fungsi decorator cache_page
  • cache query database
  • dependensi python-rq
  • dependensi django-cachalot

Kejadian server bolak-balik mati karena service redis gagal terhubung, akhirnya saya ubah redis hanya untuk dependensi python-rq saja, selainnya saya menggunakan memcached. Dan untuk sementara problem error connection di redis teratasi.

[UPDATE]: Sampai saat ini, kurang lebih 12 jam sejak beralih dari redis ke memcached, problem redis error connection ndak muncul, semoga terus anteng si server.

Redis Bikin Panik

Semalaman jaga lilin karena server bolak-balik mati, setelah diinvestigasi, karena redis service mati, error connection. Perlu diketahui, redis ini merupakan backend default cache dari aplikasi django yang saya buat (baik untuk cache_page maupun dependensi untuk library python-rq), akhirnya gerak cepat untuk mengganti redis dengan memcached untuk fungsi decorator cache_page saja.

sudo apt-get install memcached
pip install python-memcached

Redis tetap saya gunakan karena terkait dengan python-rq yang memang saya perlukan. Sehingga untuk cache_page sekarang saya pakai memcached. Let’s see how this combination will perform…