Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

Bagaimana cara menggunakan kumpulan koneksi dengan benar di redis?

Redis-py menyediakan kumpulan koneksi untuk Anda dari mana Anda dapat mengambil koneksi. Kumpulan koneksi membuat satu set koneksi yang dapat Anda gunakan sesuai kebutuhan (dan ketika selesai - koneksi dikembalikan ke kumpulan koneksi untuk digunakan kembali lebih lanjut). Mencoba membuat koneksi dengan cepat tanpa membuangnya (yaitu tidak menggunakan kumpulan atau tidak menggunakan kumpulan dengan benar) akan membuat Anda memiliki terlalu banyak koneksi untuk diredis (sampai Anda mencapai batas koneksi).

Anda dapat memilih untuk mengatur kumpulan koneksi dalam metode init dan menjadikan kumpulan global (Anda dapat melihat opsi lain jika tidak nyaman dengan global).

redis_pool = None

def init():
    global redis_pool
    print("PID %d: initializing redis pool..." % os.getpid())
    redis_pool = redis.ConnectionPool(host='10.0.0.1', port=6379, db=0)

Anda kemudian dapat mengambil koneksi dari kumpulan seperti ini:

redis_conn = redis.Redis(connection_pool=redis_pool)

Juga, saya berasumsi Anda menggunakan hireis bersama dengan redis-py karena seharusnya meningkatkan kinerja dalam kasus-kasus tertentu. Sudahkah Anda juga memeriksa jumlah koneksi yang terbuka ke server redis dengan pengaturan yang ada karena kemungkinan besar cukup tinggi? Anda dapat menggunakan perintah INFO untuk mendapatkan informasi tersebut:

redis-cli info

Periksa Klien bagian di mana Anda akan melihat "klien_terhubung " yang akan memberi tahu Anda berapa banyak koneksi yang Anda buka ke server redis saat itu juga.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara mengatur penangan di RedMQ dari acara yang diangkat di domain saya

  2. Docker gagal memulai Rails

  3. Cara yang efisien untuk memetakan data dari Redis

  4. Redis - cara apa saja untuk memicu suatu peristiwa ketika suatu nilai tidak lagi ditulis secara aktif?

  5. Bagaimana cara terhubung dengan aman ke Heroku Redis melalui baris perintah?