簡體   English   中英

Node.js / geth:執行js創建僵屍進程並停止,可能發生資源泄漏

[英]Node.js/geth : executing js creates zombie process and stops , possible resource leak

我正在運行一個js代碼,將web3程序包連接到JSON RPC API進行geth操作。 該代碼遍歷傳入塊的每筆交易,如果不是內部錢包,則跳過該代碼,然后通過http請求將信息發送到另一台服務器。

該代碼以某種方式開始產生大量的僵屍進程,當計數精確到2040時,它的停止進程仍然有效,但日志實際上停止了,這意味着該代碼未執行。 即使我無法找到代碼中的確切行創建了額外的進程,但我還是有一個問題->這些是已失效的進程,因此它們已經退出了,但是它們怎么會占有資源呢? 如果不是,那么為什么它恰好在該2040數字處停止,回調函數也可能會創建僵屍

該代碼使用eth.filter.watch函數,該函數未關閉,因為它必須不斷收集塊信息。

這是我的頂 在此處輸入圖片說明

這是我的自由-h 在此處輸入圖片說明

因此,我找到了解決方案。 顯然,有一個回調函數未正確處理,從而導致泄漏。 當ram充滿了它可以處理的過程時,它只是停止在那個數目上。 當我更改為代碼以正確的方式返回調用時,它可以正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM