
Denis
06.06.2017
08:02:00
Внутри одного скрипта?

Rafael
06.06.2017
08:02:10

Denis
06.06.2017
08:02:32
Экспресс юзаешь?

Rafael
06.06.2017
08:02:33
фича в том, что мне нужно написать p2p сеточку

Google

Rafael
06.06.2017
08:02:38
нет, не юзаю
поднимается локально, максиму что будет отличать это номера портов

Denis
06.06.2017
08:03:30
Несколько http.createServer внутри одного скрипта

Rafael
06.06.2017
08:04:33
сяб

MadMax
06.06.2017
08:05:44
Ребят
А что бы использывать oauth2 обязательно надо на сайте их регать?

Леха
06.06.2017
08:06:27
Функция принимает номер порта и возвращает объект app.
function listen(port){
const app = express();
app.listen(/* port, host, etc */);
return app;
}
Естественно псевдокод ?

Klim
06.06.2017
08:08:35
А куда можно вбросить если хочу мак продать?

Леха
06.06.2017
08:08:56
/stat@combot

Combot
06.06.2017
08:08:56
combot.org/chat/-1001041204341

Denis
06.06.2017
08:11:46

Таймураз
06.06.2017
08:14:21

Google

Vsevolod
06.06.2017
08:15:58
Почему? Можно слушать сразу несколько, не?

Таймураз
06.06.2017
08:16:26
Не процесса, а именно экземпляра http.createServer

Vsevolod
06.06.2017
08:19:42
А, ну это да :)

Rafael
06.06.2017
08:29:47
кто-то с peerjs работал?

dexofan
06.06.2017
08:34:02
Посоветуй библиотеку шоб работать с Callback API VK

Andrew
06.06.2017
09:28:30
Что использовать sequelize или node-postgres? Какие у кого предпочтения? Может есть другие варианты для node и postgres?

Vsevolod
06.06.2017
09:34:03
knex

Andrew
06.06.2017
09:37:33
ого, как много библиотек, продолжу сравнивать

Таймураз
06.06.2017
09:37:42
Пользуюсь knex относительно недолго, но вроде как покрывает все юзкейсы

Vsevolod
06.06.2017
09:39:11
Я уже достаточно давно, сначала bookshelf использовал, но по факту оказалось проще писать запросы самому :)

Таймураз
06.06.2017
09:39:29
Практически всегда проще писать запросы самому
А когда переписываешь чужой код- тем более
ребят, а бабель умеет чистить код от if(false) {}?

Andrew
06.06.2017
09:46:23
касательно вопроса сравнения, вот что нашел для поверхностного сравнения https://npmcompare.com/compare/bookshelf,knex,sequelize

Vsevolod
06.06.2017
09:48:38
ну просто seq и bookshelf это орм, а knex - просто квери билдер

Таймураз
06.06.2017
09:51:45

Andrew
06.06.2017
09:53:40
да, с нуля. С SQL не работал. Только вчера первые шаги сделал. Вроде понятно. Еще есть одна задача портировать/синхронизировать данные из baas

Таймураз
06.06.2017
09:54:34

Andrew
06.06.2017
09:56:04
благодарю за совет

Google

Dmitry ?
06.06.2017
10:04:48

Таймураз
06.06.2017
10:05:08

Ilya
06.06.2017
10:06:16
И сильно ускоряет
findOne в моделях сиквалайза очень даже

Vsevolod
06.06.2017
10:10:58
ускоряет разработку?
или что?

Ilya
06.06.2017
10:17:02
Работу кода оно не ускорит. А замедлит.
Несущественно правда

Vsevolod
06.06.2017
10:18:09
А, блин, я что-то подумал что идет свранеие обертки типа того же кнекса и секвелайза в плане findOne :)

Ilya
06.06.2017
10:19:11
Ну сложные джойны по мне лучше писать руками. Я так лучше понимаю, что я делаю

Ilya
06.06.2017
10:19:35
А простой селект и апсерт пусть делает обёртка

Vsevolod
06.06.2017
10:22:58
Да, я из-за сложны х джойнов и начал кнекс использовать, а потом вообще на него перешел, ибо нет смысла делать new Account().find({email}) если можно сделать селект через кнекс, выбрать нужные поля сразу и тп

Andrew
06.06.2017
10:24:03

Таймураз
06.06.2017
10:25:35

Vsevolod
06.06.2017
10:26:11
это же на уровне базы решается?

Andrew
06.06.2017
10:26:57
да, на уровне базы тоже можно прописывать https://i.imgur.com/UfegsNR.png

Таймураз
06.06.2017
10:27:54

Google

Alexander
06.06.2017
11:00:37
pg-promise
Что использовать sequelize или node-postgres? Какие у кого предпочтения? Может есть другие варианты для node и postgres?
https://github.com/vitaly-t/pg-promise

Таймураз
06.06.2017
11:16:19

Ilya
06.06.2017
11:19:39
Да все ща уже на промисах

Charles
06.06.2017
11:54:37
ребят, для периодических обновлений состояния небольших независимых объектов коих будет over9000 (не факт что однотипных) в одном инстансе ноды что лучше - заюзать что-нибудь cron'like (node-cron, later) и реализовать функцию update как в unity3d или все таки продолжать использовать таймеры?
считайте что у меня онлайн игра (нет конечно, но похоже крайне в этом моменте)
я прост хз как с точки зрения дизайна правильнее будет

Admin
ERROR: S client not available

Vsevolod
06.06.2017
11:55:48
а обьекты у тебя где? в памяти?

Charles
06.06.2017
11:56:00
да, еще скидываются в кэш и персистятся
в кэш в редиску и в монгу на постоянку
но в памяти только текущее состояние

Vsevolod
06.06.2017
11:56:31
а апдейт один на всех или у каждого свой7
время апдейт*

Charles
06.06.2017
11:56:41
у каждого предполагается
ну может конечно потом сбрасывать однотипные объекты в один пул по какому-либо признаку чтоб всем скопом обновлять - но до этого еще далеко, пока что не буду делать, не успею
хотя кардинально наличие такого пула ничего собственно по сути не меняет) один хрен будет update у всех звать, если cron'like подход использовать
изменения состояния предполагаются раз в сутки (запланированные). не запланированные понятно дело в любой момент времени могут прилететь

Vsevolod
06.06.2017
11:59:36
Я с тким не сталкивался, но наверное надо бы отдельный сервис мутить, типа скедулера, куда добавлять задачи на обновление и оно бы обновляло в монге-редисе для каждого

Google

Vsevolod
06.06.2017
11:59:51
а там уже можно и на таймерах и на кроне или взять какой-то таск раннер

Charles
06.06.2017
12:00:09
так в монге/редиске они и так обновляются через шину. мне их самих обновлять надо))) как раз в памяти
ну то есть у них у самих есть логика которая по истечении или раз в какое-то время должна отрабатывать. в монгу и редиску через pub-sub я обновления скидываю и так

Vsevolod
06.06.2017
12:01:18
ну так в приложухе подпишись на шину и обновляй когда в нее что-то придет

Charles
06.06.2017
12:01:39
та не
ща
function Some(name) {
this.name = name;
this.doSomething = () => {};
this.doSomethingElse = () => {};
this.interval = setInterval(() => {
this.doSomething();
}, 1000);
this.setTimeout(() => {
this.doSomethingElse();
}, 5 *1000);
}

Vsevolod
06.06.2017
12:05:01
Если у тебя уже есть шина, по которой приходят апдейты в другое место, почему ее же не прикрутить сюда

Charles
06.06.2017
12:05:03
допустим вот так. могу привести пример - представим себе что это стадо кроликов. живет само по себе, боты, и раз в какое-то время что-то делают. может быть сложная логика, могут прилетать различные внешние принудительные (локация снесена) воздействия, могут внутренние

Andrew
06.06.2017
12:05:22

Charles
06.06.2017
12:05:41
Всеволод, да есть она там) вопрос не в том как изменения этих объектов стянуть, а как их эмитить.

Ilya
06.06.2017
12:05:54

Charles
06.06.2017
12:06:09
через функцию update которая вызывается либо в loop'е либо кроном, либо в колбэках на таймерах вешать
ну там в принципе можно и реляционку прикрутить, модуль отдельный есть, IoC сделал, DI тоже
но это не суть)))

Vsevolod
06.06.2017
12:08:23
подпишись в каждом обьекте на шину, да и все


Charles
06.06.2017
12:15:48
Ты все таки не совсем понял мой вопрос. Мож я хреново сформулировал, если было непонятно - извиняюсь. Я подписан. уже. Все эти объекты, далее - кролики, инстанцируются на лужайке, и она хранится в памяти. Модуль лужайки припочкован к шине, если приходят внешние сигналы (пожар нахуй!), кролики это считывают и бегут. Если кролик уснул или сдох - это тоже подается на шину. Вопрос в том, что кролик раз в день спит (инфа о том что ему надо спать ниоткуда не прилетает, это в нем самом происходит). Функция сон должна вызываться примерно как в unity3d, то есть через update/fixed update, которая вешается глобально на весь инстанс кролдика и внутри мы прописываем что нам надо делать (спать, жрать, трахаться), И эту функцию мы вызываем с помощью cron'like штуки, которая посылает нам запрос на лужайку типа "всем обновится, сутки прошли"? Или мы делаем отдельные таймауты и интервалы внутри инстансов-кроликов на каждую периодическую деятельность??
надеюсь теперь понятно сформулировал
на кроликах как-то жизненно


Vsevolod
06.06.2017
12:21:47
У тебя на шине известно когда кролику спать надо или кролик сам об этом знает, а снаружи это не известно?