用铬处理内存不足

Lun*_*elo 5 linux out-of-memory chromium raspberry-pi

我运行在一个树莓派一个web应用程序的铬应全天候运行.主要问题是它耗尽内存并显示"他死了吉姆".我想知道是否有人可以帮助我:

  1. 引导我进入铬扩展,如果内存耗尽,将重新加载/重新启动浏览器
  2. 提供一个可能的cron作业来检测内存何时耗尽并重启浏览器(如果是这种情况)

目的是在没有人为干预的情况下每天保持铬的运行.因此,任何其他方法/想法将不胜感激.提前致谢!

Lun*_*elo 3

我实际上发现罪魁祸首是一些ajax请求,每个请求每隔几秒运行一次以检查服务器是否仍在运行(这是一个很长的故事,但必须完成)。然后我在网上找到了一个节省内存的小解决方案:将所有ajax请求放在一个变量中,然后在使用后清除该变量(我还清除了应用程序范围内未使用的java脚本变量)。下面是一个例子:

   function getData(){
        var request = $.ajax({
                url : "/someurl",
                type : "HEAD",
                dataType : "json",
                success : function(data) {
                    //use your data
                }
                error: function(){
                //doSomething
                },
                cache : false
            });


        //HERE IS THE HACK! :)
        data = null;
        request.onreadystatechange = null;
        request.abort = null;
        request = null;
        }

      setTimeout(function(){
         getData();
     }, 0.05 * 60 * 1000)
}
Run Code Online (Sandbox Code Playgroud)

PS我在网上找到了代码。