0

我正在开发一个 node.js 应用程序,它显示带有地图数据的单个页面(最终将使用 .ajax 调用进行更新)。

现在,我的代码如下所示:

    app.get('/', function(req, res) {
    postgres.retrieve('SELECT * FROM settings', function(err, proj_data){
        if (err){
            res.send(500);
        }
        else{
            postgres.retrieve('SELECT * FROM report ORDER BY ordering', function(err, report_data){
                res.render('map', {project: proj_data[0], report: report_data});
            });
        }
    });

而 postgres.retrieve 是一个使用 node-postgres 客户端的函数:

        retrieve: function(query, complete){
            pg.connect(connection, function(err, client, done){
                client.query(query, function(err, results){
                    if (err){
                        done();
                        return complete(err, null);
                    }
                    else {
                        done();
                        return complete(null, results.rows);
                    }
                });
            });
        },

目前,如果我按 f5 10 次(例如,超过 10 秒),一切似乎都响应良好,但紧接着,内存使用率上升,应用程序变得完全无响应。我想知道我的代码中是否存在导致此问题的内容。

谢谢!

4

1 回答 1

1

糟糕,这似乎是 Node v0.10.0 + 中的一个问题

https://github.com/joyent/node/issues/5108

于 2013-04-25T20:35:32.410 回答