@nodejs_ru

Страница 2585 из 2748
Роман
21.09.2018
21:51:50
И третий, типа посредника между дубликатами
Да никакие это не дубликаты. Половина пользователей подключены к А, остальная половина к Б. На бэке сообщения ходят по идентификаторам, от пользователя 10 к пользователю 15 (например). Посредник знает что пользователь 10 подключен к А, а пользователь 15 к серверу Б.

Dmitriy
21.09.2018
21:52:14
Если совсем на пальцах, у эрланга каждое соединение будет ну считай его легковесный процесс. У него есть pid внутри машины. Как только ты цепляешь несколько машин в кластер, ты можешь отправить любое сообщение в любой пид. Для регистра пидов мнезия, как стандартная встроенная в эрланг база на ets/dets. На выходе счастье

Google
Aga
21.09.2018
21:52:53
Примерно один сервак сколько пассивных соединений потянет?

10к осилит?

Aga
21.09.2018
21:53:50
Пиздец

Dmitriy
21.09.2018
21:54:21
Если хреново написать — не осилит)

Aga
21.09.2018
21:54:22
Есть ли необходимость дубликата после этого?

Роман
21.09.2018
21:54:32
Но это синтетика. Для общего понимания можешь ознакомиться всё же.

Trilium
21.09.2018
21:54:43
JWT?)))
jwt и что угодно. у вебсокета есть стадия хендшейка, у вас будут куки с клиента, а по ним аутенфицирйте как хотите. так это работает.

Роман
21.09.2018
21:57:30
Кстати, норм ли при каждом соединии делать запрос и верифицировать акк?
Соединение устанавливается и висит открытым. По нему передаются сообщения. При дисконнектах снова цепляешь по идентификатору.

Google
Aga
21.09.2018
21:57:46
сессии, не?
У юзера sid

В бд сессия привязывается к юзер агенту

То есть, клиент даёт Sid и свой user agent для верификации

Ладно, ребята, спасибо за помощь)

Я спать

Gor
21.09.2018
22:04:02
я кстати решал такую задачу

когда mfw писал

я вижу в общем два варианта решения (если обсуждать в целом): - использовать общую базу ( redis, rabbit etc) к которой каждый websocket server worker конектится и выбирает данные для каждого клиента - рассылать на все воркеры через TCP/UDP сообщение, и опять же на основе кому, раскидывать сообщение.

Trilium
21.09.2018
22:18:07
в три строчки https://socket.io/docs/using-multiple-nodes/ var io = require('socket.io')(3000); var redis = require('socket.io-redis'); io.adapter(redis({ host: 'localhost', port: 6379 })); и теперь можно запускать сколько хочешь инстансов ноды, вебсокеты могут коннектится к любым из них и все вместе общаться. работает все на redis pub/sub io.emit('hi', 'all sockets'); - заэмитит всем сокетам, даже если они не подключены к этой ноде io.to('room42').emit('hello', "to all clients in 'room42' room"); а с помощью https://github.com/socketio/socket.io-redis можно слать сокету по его id из любой ноды. даже если эта нода вообще с сокетами не работает(такое иногда нужно) // sending to all clients io.emit('broadcast', /* ... */); // sending to all clients in 'game' room io.to('game').emit('new-game', /* ... */); // sending to individual socketid (private message) io.to(<socketid>).emit('private', /* ... */);

Alexander
21.09.2018
22:19:32
хуясе технологии

Trilium
21.09.2018
22:20:42
Alex
21.09.2018
22:50:42
кто мешает фильмы хранить в реляционной базе?
А почему нельзя через nginx фильмы отдавать по урлу? Сорри за слоупочество

Denis
21.09.2018
23:12:44
А как в nighmare.js достать из документа ссылку и перейти по ней .evaluate(function () { return document.querySelector('#url').href; }) .then(function (url) { //Never does anything, never changes the current URL nightmare.goto(url); }) (так не работает говорит not defined )

Сергей
21.09.2018
23:57:54
А почему нельзя через nginx фильмы отдавать по урлу? Сорри за слоупочество
У nginx не бесконечное количество соединений. А точнее у системы

Дмитрий
22.09.2018
03:35:33
Sergey
22.09.2018
05:18:02
У nginx не бесконечное количество соединений. А точнее у системы
Для фильмов проблема будет в ширине канала, а не в количестве соединений

Grigorii
22.09.2018
06:29:19
Добрый день. Подскажите, есть ли для feathersjs или может универсальная библиотека для описания политик ролей? Подобная тому, какая используется в sails. Находил feathers-permissions, но она очень простая, и описывает только роли пользователям в целом. Требуется более сложное, чтобы описывать права пользователя в конкретной группе при работе с конкретной сущностью.

Google
Grigorii
22.09.2018
06:32:26
Вообще, выбираю фреймворк для серверной части SPA приложения. Ранее использовал преимущественно просто Express и больше делал MPA приложения. Требуется сделать приложение-редактор, в котором есть пользователи, группы и проекты. Проекты будут совместно редактироваться пользователями. Выбираю между feathers и sails. Против sails пока то, что это MVC фреймворк, который бы точно взял для MPA, а тут казалось бы можно по-проще. С другой стороны у sails есть уже определённая структура приложения, в которую входит сразу всё, что мне нужно (+ лишнее).

Есть ещё подобные библиотеки? https://www.npmjs.com/package/promise-policies

Grigorii
22.09.2018
07:05:45
Это недо rbac?
Не видел такой, сейчас посмотрю подробно. Но при первом взгляде на readme, она тоже роль-описывающая, разделяющая юзеров на роли

Alexander
22.09.2018
07:06:49
Grigorii
22.09.2018
07:08:22
rbac.can принимает на вход три строки, кто что и с чем хочет делать на уровне просто имён сущностей. Как тут учесть контекст, т.е. то, какой конкретно юзер, и какую конкретно сущность трогает - не очень понятно. В примерах нет, api ещё не дочитал, но хотелось бы документацию не только из api состоящую

Ну, rbac надо писать самому, я когда искал то нормальных пакетов не видел
Ну вот promise-policies вроде подходит под мои требования, но смущает единицы загрузок и единицы stars :D

Alexander
22.09.2018
07:09:50
Мне шо, свой пакет сделать чтоле?

Ну, может и сделаю...

Grigorii
22.09.2018
07:13:45
Мне понравились политики в sails, неужели нет подобного отдельным пакетом... Тут не сложно, конечно, свой велосипед написать, но как-то хотелось без этого

На rbac я пока не понял даже, как описать, что пользователь может редактировать только вой профиль...

Ок, я понял идею rbac

Vladimir
22.09.2018
07:45:40
всем привет, а можно ли из питона вызывать функции npm пакета?

Grigorii
22.09.2018
07:48:53
всем привет, а можно ли из питона вызывать функции npm пакета?
Напрямую нет, но можно вызвать node script.js, если установлен nodejs в систему. А также в script.js добавить обработку параметров для вызова конкретной функции

Vladimir
22.09.2018
07:49:30
понял, а много времени нужно чтоб в ноду вникнуть?

мне один скрипт буквально написать

просто пакет только под ноду есть нужный

Grigorii
22.09.2018
07:50:30
Примёр обёртки для выполнения того же действия http://sweetme.at/2014/02/17/a-simple-approach-to-execute-a-node.js-script-from-python/

Google
Vladimir
22.09.2018
07:51:20
попробую обертку тогда написать

Grigorii
22.09.2018
07:52:29
понял, а много времени нужно чтоб в ноду вникнуть?
Вам вникнуть надо только в том, как аргументы взять, с которыми вызывается скрипт, с ними функцию вызвать и вернуть результат

Можно ещё глянуть nexe, чтобы весь этот скрипт с нужной библиотекой и нужной версией ноды засунуть в exe, если вы под виндой

Alexander
22.09.2018
07:59:31
Артем
22.09.2018
08:11:41
Питон заэбис

Alex
22.09.2018
08:16:16
Угу, самое то для сервисов ?

Aga
22.09.2018
08:45:22
>питон
Зачем роли нужны?

Если на уровне кода можно решить эту проблему

Без всяких ролей

Alexander
22.09.2018
08:46:07
што?

Aga
22.09.2018
08:46:37
Ништо

Maxim
22.09.2018
10:33:44
Привет! На борту: монга, монгуз. Подскажите, пожалуйста, как красиво сделать следующее: - нужно запилить ендпоинт/ф-цию/модуль, которая сможет делать в каком либо виде джойн двух коллекций, и дальше - делать по этому джойну пагинацию/фильтрацию/сортировку + обрезать ненужные поля.

пока я кроме костылей ничего путьнего придумать не могу =( если просто "заджойнить две коллекции" можно на уровне джаваскрипта, то как потом поверх этого организовать пагинацию и сортировку - не пойму

юз кейс - админка, две коллекции - автомобили и водители - где в таблике с водителями нужно показывать инфу про авто (связь условно 1:1)

Maxim
22.09.2018
10:37:43
если про связи, то в монгузе можно через хуки их реализовывать
ок, но а что делать с пагинанацией/сортировкой/фильтрами?

их же нужно одновременно делать по двух табличках (

Google
Maxim
22.09.2018
10:38:51
ручками наверное
я верно понимаю, что монгуз-пагинейт мне не поможет?

Maxim
22.09.2018
10:39:39
ручками наверное
+ чисто в теории - я могу создать "виртуальную" модельку/схему, которая сможет агрегировать данные из двух реальны коллекций?

Alexander
22.09.2018
10:40:02
ща

а, он только в виртуальные свойства может

Alexander
22.09.2018
10:42:00
это как?
Api - https://mongoosejs.com/docs/api.html#schema_Schema-virtual Doc - https://mongoosejs.com/docs/guide.html#virtuals

Maxim
22.09.2018
10:42:47
Почему не postgresql ?
я не с 0 пишу - к нам уже прилител проект а монге

и полностью согласен

Voskresus
22.09.2018
10:42:55
Зачем вы все монго берете ? вам че реляционных баз мало ?

Понял

Maxim
22.09.2018
10:43:26
Зачем вы все монго берете ? вам че реляционных баз мало ?
говорю полностью с тобой согласен - тут бы реляционка в разы бы лучше смотрелась

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