dulucy opened a new issue, #2532:
URL: https://github.com/apache/brpc/issues/2532

   **Describe the bug (描述bug)**
   --第一个class
   struct data{
    .....
   }
   
   class DemoTask {
   public:
   bthread::ExecutionQueueId<list<data>> queue_id_one;
      void start(){
    bthread::execution_queue_start(&queue_id_one, nullptr, insertMongoDB, 
nullptr);
   }
   };
   
   int consume(void* meta, TaskIterator<data>& iter) {
       if (iter.is_queue_stopped()) {
           return 0;
       }   
       for (; iter; ++iter) {
         //这里使用mongo的C++驱动,将data的数据存入mongodb
         //从配置读取db路径
        //处理数据
   
       }   
       return 0;
   }
   
   ------第二个class
   class  request(){
       private:
        DemoTask task;
       bthread::ExecutionQueueId<list<data>> queue_id_one;
      public:
        defualt(){
         task.start();
     }
        http(){
          //将请求日志数据使用data
           data  .....
          bthread::execution_queue_execute(queue_id_one, data );
      }
   
   }
   
   ----问题
   1、第一次使用brpc,不太确定是否是因为使用方式不正确导致内存没有正常释放
   
2、测试环境在容器云上,内存是2G,压测27万次请求,内存从50mb逐步升到800mb,停止压测后,内存一直不会降下来(这次测试有一部分是因为日志数据插入太慢)
   3、修改代码后,再次测试。内存从50mb涨到500mb,确认日志数据全部插入数据库了,但是内存任然没有降下来
   
4、我觉得是consume方法中创建的变量等,没有正常释放(我把方法中的逻辑全部删除测试过一次,内存一直在50mb左右,没有明显的增长)。不太理解完成一次任务后,任务中的变量等什么时机释放内存的。
   
   
   **To Reproduce (复现方法)**
   
   
   **Expected behavior (期望行为)**
   了解内存不下降的原因,已经如何改进
   
   **Versions (各种版本)**
   OS:
   Compiler:
   brpc:1.6.1
   protobuf:
   
   **Additional context/screenshots (更多上下文/截图)**
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org

Reply via email to