Форум программистов, компьютерный форум, киберфорум
Node.js
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
32 / 25 / 12
Регистрация: 24.01.2011
Сообщений: 564

Нехватка памяти, при подключении через socket

18.10.2024, 12:26. Показов 2100. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import { Server } from "socket.io";
import { createAdapter } from "@socket.io/mongo-adapter";
import { MongoClient } from "mongodb";
 
    const DB = "mydb";
    const COLLECTION = "socket.io-adapter-events";
 
    const io = new Server();
 
    const mongoClient = new MongoClient("mongodb://localhost:27017/");
 
    await mongoClient.connect();
 
    io.on('connection', socket => {
        socket.on('mess', async (mess) => {
            try {
                const database = mongoClient.db('test');
                const messages = database.collection('test');
                //const coin = await messages.findOne({ exchange: mess.exchange, s: mess.s });
 
                await messages.replaceOne({ exchange: mess.exchange, symbol: mess.symbol }, mess, {upsert: true});
                //console.log('Inserted documents =>', insertResult);
 
 
 
            } catch (e) {
                console.log(e.message)
            }
        })
    })
 
 
    const mongoCollection = mongoClient.db(DB).collection(COLLECTION);
 
    io.adapter(createAdapter(mongoCollection));
    io.listen(3000);
    console.log('Server is running!')
взял пример из документации socket, добавил этот код

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 io.on('connection', socket => {
        socket.on('mess', async (mess) => {
            try {
                const database = mongoClient.db('test');
                const messages = database.collection('test');
                //const coin = await messages.findOne({ exchange: mess.exchange, s: mess.s });
 
                await messages.replaceOne({ exchange: mess.exchange, symbol: mess.symbol }, mess, {upsert: true});
                //console.log('Inserted documents =>', insertResult);
 
 
 
            } catch (e) {
                console.log(e.message)
            }
        })
    })
код клиента
JavaScript
1
2
3
4
5
6
7
8
9
const gate = io('http://localhost:3000/')
 
gate.on("connect", ()=>{
    console.log('client connect')
})
 
//получаем данные и отправляем на сервер mongo
 
gate.emit('mess', coin)
и через некоторое время появляется ошибка
Code
1
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
изменял выделенение памяти на 4гб, все равно появляется эта ошибка
подскажите, пожалуйста в чем проблема?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.10.2024, 12:26
Ответы с готовыми решениями:

Нехватка прав при подключении базы данных
Необходимо создать интерфейс для базы sql. В C# когда пытаюсь подключить базу данных, то мне пишут, что у меня нет на это прав, копался в...

Нехватка памяти при компресии данных
Доброго времени суток :) Нужно написать алгоритм сжатия данных для архиватора ( zlib и т.д. использовать нельзя все руками), за основу...

Нехватка памяти при выбросе исключения
Собственно, наткнулся на проблему //Если здесь для создания std::string не хватит памяти, то вылетит std::bad_alloc, вместо...

21
425 / 314 / 115
Регистрация: 28.08.2013
Сообщений: 868
26.10.2024, 04:38
Студворк — интернет-сервис помощи студентам
Цикл "for in" не для асинхронных операций. Есть for await...of.
JavaScript
1
2
3
for await (const coin of coins){
    await mongoCollection.replaceOne({ exchange: coin.exchange, symbol: coin.symbol }, coin, {upsert: true});
}
0
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
27.10.2024, 19:53
kidASM, for await для асинхронных итераторов. Если итератор не асинхронный, то нужен обычный for of с await внутри.

Итерироваться обычным for of по асинхронному итератору вообще не вышло бы, так что у ТС не он.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.10.2024, 19:53

Нехватка памяти при пролистывании страниц
Здравствуйте! Столкнулся со следующей проблемой. Я явлюясь администратором крупной Facebook-группы, в которой каждый день...

Нехватка памяти при работе с БД Oracle 11g при вставке нескольких сотен тысяч строк
Доброго дня, уважаемые форумчане. у меня внезапно возникла проблема нехватки памяти во время отправки запросов Insert в БД. Данных ОЧЕНЬ...

Недостаточно памяти для завершения операции, при подключении через RDP, Windows server 2012R2
помогите разобраться почему не пускает удаленно на сервер пишет недостаточно памяти для завершения операции? В чем может быть косяк?

Нехватка памяти при создании маленького массива
Здравствуйте. Я пытался создать массив весовых коэффициентов, при написании нейронной сети из пяти слоев по 1024х768 нейронов каждый. ...

Нехватка памяти при операции bmp = new Bitmap
Впервые столкнулся с OutOfMemoryException, объясните, пожалуйста, в чём я ошибся, и как исправить private void...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса Калибровка параметров симбиотической модели: технический обзор Содержание: Введение Постановка проблемы Технические аспекты реализации Процесс внедрения изменений
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0» https:/ / ibb. co/ NnkGpfMd Представленная интегрированная схема описывает непрерывную нелинейную. . .
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы ### Аннотация Представлено исследование по разработке агентной модели микоризной. . .
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики Контекст Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии Введение Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np class PlantAgent: def __init__(self, name, strategy, initial_biomass): self. name = name self. strategy = strategy # "greedy" (широколиственные) или. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru