Node-redis: Perbedaan antara unref (), Quit () dan End ()

Dibuat pada 11 Feb 2015  ·  6Komentar  ·  Sumber: NodeRedis/node-redis

Seperti yang ditunjukkan judulnya, bahkan setelah membaca dokumentasi, tidak jelas bagi saya apa perbedaan antara unref() , quit() dan end() .

  • Mana yang harus saya gunakan dan dalam kasus penggunaan apa?

end() sepertinya menutup koneksi tanpa menunggu semua soket ditutup.
unref() sepertinya menunggu hingga semua perintah berakhir.
quit() sepertinya mirip dengan unref() .

  • Karena unref() tidak memiliki batas waktu, apakah dijamin akan berakhir atau haruskah saya menetapkan batas waktu?
  • Apakah peristiwa end dipanggil tanpa syarat dari yang mana saya panggil?
question

Komentar yang paling membantu

end() dirancang untuk digunakan di mana Anda menghentikan aplikasi SEKARANG, misalnya penangan uncaughtException , dan tidak mengantisipasi atau ingin menunggu (jika ada) balasan dari perintah yang mungkin telah Anda kirimkan yang belum kembali dari Redis.

quit() dirancang untuk saat Anda selesai dengan koneksi ini dan ingin menutupnya, tetapi biarkan aktivitas yang belum selesai diselesaikan. Dalam kebanyakan kasus jika Anda mencoba mengakhiri koneksi, gunakan quit()

unref() tidak dirancang untuk bersaing dengan opsi-opsi ini, tetapi hanya untuk memungkinkan aplikasi Anda keluar jika satu - unref sini http://nodejs.org/api/net.html#net_server_unref

Semua 6 komentar

end() dirancang untuk digunakan di mana Anda menghentikan aplikasi SEKARANG, misalnya penangan uncaughtException , dan tidak mengantisipasi atau ingin menunggu (jika ada) balasan dari perintah yang mungkin telah Anda kirimkan yang belum kembali dari Redis.

quit() dirancang untuk saat Anda selesai dengan koneksi ini dan ingin menutupnya, tetapi biarkan aktivitas yang belum selesai diselesaikan. Dalam kebanyakan kasus jika Anda mencoba mengakhiri koneksi, gunakan quit()

unref() tidak dirancang untuk bersaing dengan opsi-opsi ini, tetapi hanya untuk memungkinkan aplikasi Anda keluar jika satu - unref sini http://nodejs.org/api/net.html#net_server_unref

Kemudian acara end hanya dikeluarkan dari saat Anda menelepon quit() . Tidak yakin mengapa tanpa penelitian.

jika Anda tidak menelepon berhenti apa pun yang terjadi.

@techsin Jika Anda tidak pernah menutup koneksi redis, aplikasi node Anda akan duduk dan menunggu selamanya terhubung ke server Redis.

bagaimana jika aplikasi telah ditutup, tetapi server redis masih aktif. apakah itu membuat server redis menyimpan referensi? apakah itu semacam kebocoran memori

maaf saya tidak jelas pertama kali

Tidak, jika aplikasi ditutup, koneksi klien akan terputus dan server Redis akan menghentikan referensi di sisinya, jadi tidak ada kebocoran memori.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat