Я начал создавать приложения для PHP и Node Js для своих обновлений спортивных результатов в реальном времени.У меня есть мой php и сервер узла, работающий нормально с модулями узла express, socket io и zeromqУ меня есть большие данные, которые я получаю из API, где в php-файле я упаковываю и отправляю данные json на сервер узла (через zeromq), затем эти данные поступают в файл js-сервера узла, откуда они отправляются на клиентскую сторону.Теперь настройка полностью работает для небольшого набора данных.Но когда это большой файл, сервер узла не может продолжить обработку с ошибкой, перечисленной ниже.
Это ошибка, которую я получаю при попытке отправить клиенту через сокет io на узле сервер
: ../node_modules/nan/nan.h:822: Nan :: MaybeLocal Nan :: NewBuffer (char *, size_t, node :: Buffer :: FreeCallback, void *): длина утверждения <= imp :: kMaxLength &&«слишком большой буфер» не удалось.Прервано (ядро сброшено) </p>
Это основной node_socket.js
var express = require('express');
var app = express();
var fs = require('fs');
var options = {
key: fs.readFileSync('/etc/letsencrypt/live/example.com/privkey.pem'),
cert: fs.readFileSync('/etc/letsencrypt/live/example.com/fullchain.pem'),
ca: fs.readFileSync('/etc/letsencrypt/live/example.com/chain.pem')
};
var https = require('https').Server(options, app);
var zmq = require('zeromq')
, sock = zmq.socket('pull');
sock.bind('tcp://10.150.0.6:1111');
var io = require('socket.io')(https);
io.on('connection', function(socket){
socket.on('disconnect',function(){
console.log("client disconnected");
})
sock.on('message',function(msg){
console.log('work: %s', msg.toString());
socket.emit('latest_score',msg.toString());
});
});
https.listen(3333);
sock.on('connect', function(fd, ep) {console.log('connect, endpoint:', ep);});
console.log('App connected to port 3333');
Обратите внимание, что приложение отлично работает с небольшими данными, но просто не может обрабатывать большие данные JSON, отправляемые изphp файлНесколько дней я пробовал разные вещи, но безрезультатно.Я также нанял несколько разработчиков js-сайтов с fiverr.com, но они также не смогли решить проблему.Я надеюсь, что кто-то здесь направит меня в правильном направлении.