cari

Rumah  >  Soal Jawab  >  teks badan

java - 当消息生产者生产消息的能力远远大于消息的消费者的消费能力时,该如何解决内存泄漏的问题?

当消息生产者生产消息的能力远远大于消息的消费者的消费能力时,程序会发生什么事?

例如我这里有组桥接的生产者,每30秒会发布3700万条消息,而消费者就是一个简单的客户端,处理这3700万条消息,消费者会发生什么事?

//我知道消费者的缓冲队列会爆满溢出,导致内存泄露

怎么解决?

PHP中文网PHP中文网2818 hari yang lalu621

membalas semua(3)saya akan balas

  • 高洛峰

    高洛峰2017-04-18 10:32:07

    • Pertama sekali, ini tidak dipanggil kebocoran ingatan. Namanya agak longgar

    • Jika anda tidak mempunyai keperluan kebolehpercayaan yang tinggi, anda boleh mempertimbangkan untuk membuang beberapa secara rawak

    • Perkakasan Pengembangan

    • Jika anda mempunyai keperluan untuk kebolehpercayaan. Secara mudahnya, ia dibuang ke dalam cakera keras atau pangkalan data terlebih dahulu, ia tidak boleh disimpan dalam memori. Ia sedikit seperti contoh Socket di Java Terdapat InputStream dan OutputStream yang masing-masing mengekalkan baris gilir SendQ dan baris gilir RecvQ, tetapi ia berada dalam memori dan kami hanya meletakkannya pada cakera keras.

    balas
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:32:07

    Adakah RejectedExecutionHandler?

    balas
    0
  • 黄舟

    黄舟2017-04-18 10:32:07

    Walaupun memori itu bocor, ia tetap tidak ranap. RejectedExecutionHandler mengendalikan tugasan yang ditolak, mengapa tidak menggunakan redis, haha

    balas
    0
  • Batalbalas