【问题标题】:nodejs square cube evaluator throwing Maximum call stack size exceedednodejs方形立方体评估器抛出最大调用堆栈大小超过
【发布时间】:2013-05-08 12:02:24
【问题描述】:

客户端使用 websockets 连接到托管 cube evaluator 的 nodejs。

当限制设置为超过 900 时,服务器会出现以下错误:

// Copyright Joyent, Inc. and other Node contributors.
^
RangeError: Maximum call stack size exceeded

代码直接从网站getting started guide I.e.复制而来

客户

var socket = new WebSocket("ws://nodeserver/1.0/event/get");

socket.onopen = startReceiving;

function startReceiving() {
    var yesterday = new Date();
    yesterday.setDate(yesterday.getDate() - 1);
    var startDate = yesterday.getTime();

            socket.send(JSON.stringify({
                "expression": "some_event(param1,param2,param3,param4).eq(param1,'SomeValue')",
                "start": startDate,
                limit: 20000
            }));

            socket.send(JSON.stringify({
                "expression": "someother_event(param1,param2,param3,param4).eq(param1,'SomeOtherValue')",
                "start": startDate,
                limit: 20000
            }));

}

socket.onmessage = function (message) {
    var event = JSON.parse(message.data);
    // Do something with event
};

服务器

var cube = require("cube");
var appConfig = require('./server.config.js');

var evaluatorOptions = appConfig.evaluatorOptions;

var registerServer = function(options, cubeSubject) {
    var server = cube.server(options);
    server.register = function(db, endpoints) {
        cubeSubject.register(db, endpoints);
    };
    server.start();
};

registerServer(evaluatorOptions, cube.evaluator);

谁能建议我在这里做错了什么?

【问题讨论】:

    标签: javascript node.js mongodb websocket cube


    【解决方案1】:

    获取最新版本的立方体库解决了上述问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-05
      • 2017-09-02
      • 2014-02-07
      • 2013-12-13
      • 2017-07-02
      • 1970-01-01
      • 2017-04-01
      • 2020-11-16
      相关资源
      最近更新 更多