@nodejs_ru

Страница 1112 из 2748
Evgeny
20.08.2017
10:35:38
Очень рекомендую для изучения на русском "Практическая грамматика английского языка с упражнениями и ключами под редакцией Качаловой К. Н."

Sheldhur
20.08.2017
10:44:00
ку

юзать бабель для чистой ноды или не стоит?

Vsevolod
20.08.2017
10:52:57
Хочешь юзай

Google
Vsevolod
20.08.2017
10:53:00
Хочешь нет

Andrew
20.08.2017
11:02:18
Ребят, кто какую бд юзает, а то как посмотрю - монгу не очень любят

arts
20.08.2017
11:03:11
Постгрес

Для некоторых задач — редис

Vsevolod
20.08.2017
11:37:25
Смотря для чего тебе бд нужна :)

Gleb
20.08.2017
12:23:26
Всем привет. При использовании node v8.3.0 и модуля websocket. Делаю чат. В какой-то момент виснет нода. Перестаёт отвечать на какие либо запросы. В логах ошибок нет. Кто-нибудь сталкивался? Как решили ?
В лимит памяти не упирается? Мб какие-то локи. Погугли насчёт переменной окружения DEBUG (в доках вроде есть), посмотри что в HTTP творится. Если это SocketIO, посмотри как можно отладить mWebSocket. Попробуй стандартными методами linux посмотреть, что в сети происходит.

Gleb
20.08.2017
12:50:48
В памят вроде не упирается. Делал профилирование через хром. 33 мб примерно показывает. Буду пробывать перенести на сокет ио
Ну если не супер-много кода, лучше перенеси. Это как использовать чисто модуль http для http api.

А на SocketIO и всякие ништяки тебе будут, типа реконнекта и всё такое. Плюс у них дебаг удобный.

Google
Gleb
20.08.2017
13:08:47
Камрады, вопрос такой созрел. Как наиболее эффективно хранить One-to-Many связи ооочень большого количества элементов. К примеру, 10000 групп по 1000000 объектов (строк, чисел, etc.). Варианты: 1). Тупо стандартное решение на SQL. Конечно БД пережуёт 10 млрд строк, но чёт мне подсказывает, что будут проблемс, в том числе и с маштабированием) 2). Array of * в PostgreSQL - список должен влезть в 1gb 3). Массивы в MongoDB - тут уже в 64 мб и как это будет работать при решардинге - непонятно 4). List в Cassandra (2^31 элементов) Задачи стандртные: 1). Получить список кусками 2). Добавить элемент в список (с проверкой на уникальность) 3). Удалить 4). Проверить существование в списке В качестве данных DWORD (16 бит) или строки < 30 символов. Хотелось бы услышать ваше мнение по поводу этих вариантов или рекомендации на какие-то другие БД.

Egor
20.08.2017
13:10:16
Вопрос: Как подключится к работающему нодовскому процессу по PID, чтобы увидить логи которые node выводить через console.log Развернуто: На офисном компе запустил процесс, который честно продолжает работать судя по htop, естественно логи выводятся в консоль компьютера на котором он запущен. Можно ли подключится к процессу зайдя на комп по ssh?

KlonD90
20.08.2017
13:11:58
Камрады, вопрос такой созрел. Как наиболее эффективно хранить One-to-Many связи ооочень большого количества элементов. К примеру, 10000 групп по 1000000 объектов (строк, чисел, etc.). Варианты: 1). Тупо стандартное решение на SQL. Конечно БД пережуёт 10 млрд строк, но чёт мне подсказывает, что будут проблемс, в том числе и с маштабированием) 2). Array of * в PostgreSQL - список должен влезть в 1gb 3). Массивы в MongoDB - тут уже в 64 мб и как это будет работать при решардинге - непонятно 4). List в Cassandra (2^31 элементов) Задачи стандртные: 1). Получить список кусками 2). Добавить элемент в список (с проверкой на уникальность) 3). Удалить 4). Проверить существование в списке В качестве данных DWORD (16 бит) или строки < 30 символов. Хотелось бы услышать ваше мнение по поводу этих вариантов или рекомендации на какие-то другие БД.
Ты же понимаешь что зависит от типа данных и операций. Если тольк для проверки на уникальности конечно же бери базу данных не парься. такие проверки идут по индексу btree достаточно подтюнить чтобы индексы в память влезали или пользоваться in-memory решениями и все будет ок

Gleb
20.08.2017
13:20:19
Ты же понимаешь что зависит от типа данных и операций. Если тольк для проверки на уникальности конечно же бери базу данных не парься. такие проверки идут по индексу btree достаточно подтюнить чтобы индексы в память влезали или пользоваться in-memory решениями и все будет ок
Для того тип данных и операций описал) In-memory типа Redis не подходят по надёжности хранения, как мне кажется. Индексы в память и всё такое эт понятно, но вот какой вариант лучше - не очень) Наверное прийдётся проверять все варианты. Это для своего проекта, так что сроков нет, хоть свою БД пиши (этот вариант тоже рассматриваю).

arts
20.08.2017
13:38:48
Шардируй по группам, например.

KlonD90
20.08.2017
13:42:35
можно хоть все целиком в памяти хранить

Игорь
20.08.2017
13:49:40
господа, а кто какой логгер в нодЖС использует?

такой чтоб сразу с сохранением в файл

я вот смотрю winston вроде ниче такой. На одном проекте использовал. Вроде ништяк

пользовался debug. тоже прикольный. может еще есть что-то интересное хайповое? )

Voskresus
20.08.2017
13:56:51
как быть если есть функция которая без коллбека тесно связана с другой ассинхнорнной функцией

как мне понять что первая функция уже выполнилась ?

var s; one(2,3); //s = 2+3; two(s,(err){ бла бла });

ну вот например что то такое

Evgeniy
20.08.2017
14:00:02
а почему нельзя добавить в ней колбек?

или использовать промисы?

Voskresus
20.08.2017
14:00:52
я в JS давно но не много знаю про коллбек

вообще вся эта нодовская писанина странная

Evgeniy
20.08.2017
14:01:33
=)

Google
Voskresus
20.08.2017
14:01:47
ща реальный пример кода скину

Vlad
20.08.2017
14:02:02
Здрасьте всем. Есть такой код: let child = spawn("r"); child.stdin.write("2 + 3\r\n"); child.stdin.end(); child.stdout.on('data', (output) => { console.log(output); }); но stdin у меня undef.

Evgeniy
20.08.2017
14:02:34
Колбек - это основа всего асинхронного кода в ноде, это надо знать.

https://learn.javascript.ru/

Igor
20.08.2017
14:04:05


ммм

Voskresus
20.08.2017
14:05:07
bot.downloadFile(file_id, "photos") // загружаю фото bot.blabla("photos",(err) => { //функция работающая с той картинкой которую мы загрузили });

вот как быть ?

я конечно накостылил этот код но я чувствую что можно лучше сделать

Evgeniy
20.08.2017
14:13:15
https://learn.javascript.ru/promise

Gleb
20.08.2017
14:26:14
Шардируй по группам, например.
Понятно, что шардинг нужен будет и он, собственно, будет. Я просто жду кого-нибудь, кто прибежит и закричит: "Не юзай листы в cassandra, у них лагает вставка элементов".

Дмитрий
20.08.2017
14:28:15
Не читал все переписку, только про redis услышал что мол не надежный. Так вот, надежный еще как)

Там дамп + лог операций идет с последовательной записью на диск(по скорости очень быстро).

В одном инстансе смело можно хранить 20гб. Может и больше при определенном тюнинге и условиях. На 30гб у меня были проблемы с дампом, но думаю решаемы, я просто отказался от дампа из-за специфики данных

10 000 групп по 1 000 000 записей вполне может переживать, если это предел и практика покажет что база раздулась то легко поднимается несколько инстансов редиса и тупейший шардинг между ними

Ну и за очень продолжительное время работы с редисом на довольно нагруженных проектах - не заметил и байта потери данных или каких либо больших гемороев

.
20.08.2017
14:37:30
class Store { @state = "pending" } что за синтаксис такой? у меня вскод пишет что не понимает

Vladimir
20.08.2017
14:39:52
Херовый синтаксис, невалидный

KlonD90
20.08.2017
14:40:29
руби? кофе?

Google
.
20.08.2017
14:40:34
https://mobx.js.org/best/actions.html

вот тут взял

Dmitry
20.08.2017
14:41:38
Здравствуйте. Может кто посоветовать как правильно хранить файлы-пароли для доступа к внешним ресурсам? Например к гугл севисам.

Vladimir
20.08.2017
14:42:08
вот тут взял
@observable state = "pending"

Вестрейт в доке ошибся

.
20.08.2017
14:43:06
таки да, просто удивило что там это все время повторяется

Gleb
20.08.2017
14:44:13
Ну и за очень продолжительное время работы с редисом на довольно нагруженных проектах - не заметил и байта потери данных или каких либо больших гемороев
В AOL лучше не делать большое количество записей... Хотя их вроде и не должно быть. Да, конечно, можно Redis Suntinel с шардиоованием на прокси поднять, не вопрос. Было на одном проекте, полёт нормальный. Просто... Я немного перестраховщик)

KlonD90
20.08.2017
14:46:38
ну он мб себе бабелем поставил плагинов каких-то

Там дамп + лог операций идет с последовательной записью на диск(по скорости очень быстро).
ну нет. посмотри что умеет тарантул с этим логом и редис. сравни с включенным wal redis и tarantool

Дмитрий
20.08.2017
14:51:37
Это разные базы для разных целей

Vladimir
20.08.2017
14:51:39
У редиса нет wal

KlonD90
20.08.2017
14:51:44
ну как нету

если есть

Vladimir
20.08.2017
14:51:52
Нет

KlonD90
20.08.2017
14:51:58
удалили что ли?

Vladimir
20.08.2017
14:52:12
не было никогда

KlonD90
20.08.2017
14:54:22
да у него aof. Почему-то думал что они все таки добавили wal

Google
KlonD90
20.08.2017
14:57:00
Это разные базы для разных целей
ну в ту историю redis не вписывается т.к. например точно не справится по хорошему с пагинацией

Дмитрий
20.08.2017
14:57:33
Я не читал историю и сказал это сразу)

KlonD90
20.08.2017
14:57:38
а вот postgresql все стерпит ❤️

Дмитрий
20.08.2017
14:57:51
Тарантул к сожалению только поигрался но продакшен еще не успел

KlonD90
20.08.2017
14:58:36
Это почему?
А как? range операнд?

Vladimir
20.08.2017
15:00:13
Ну там много способов

Дмитрий
20.08.2017
15:00:17
Тарантул это нечто больше чем редис, имхо сравнивать их не смысла, думаю осипов костя тоже не рад этому сравнению)

KlonD90
20.08.2017
15:00:58
Ну там много способов
ну они мне кажется тяготеют к O(N)

Дмитрий
20.08.2017
15:00:59
И думаю поставленную задачу можно решить кучей способов

И редисом и тарантулом и наверняка при норм подходе даже Mysql может норм переживать все это

Дмитрий
20.08.2017
15:02:15
Ну это уже словестная брань))

Страница 1112 из 2748