Дмитрий
Приду, попробую
Егор
напиши такой .bat
Егор
ну и попробуй узнать, можно ли через npm триггерить запуск бат-файлов
Willy
/stat@combot
Combot
combot.org/chat/-1001041204341
Дмитрий
Уйти с винды
Ну уж нет
Anonymous
/stat@combot
Combot
combot.org/chat/-1001041204341
Sergey
Ну уж нет
Лучше уйти
Sergey
Жить будет легче
Eugene
🤔винда для кодинга такое себе, если это не си шарп
Dmitry
Ну уж нет
Я ушел и это круто
Oleg
Ну уж нет
ну, тут выбор или биться о костыли как о скалы и терпеть, или не тратить время на бесполезные действия
Anonymous
Типа того. Надо написать обработчики для данных
Сначала блок в котором пюпитр подключается к моему серверу и список событий, а потом команды телеги и собственно сами события?
Таймураз
Ну уж нет
Ну уж да Не усложняй себе жизнь, пересядь на Линукс Я знаю достаточно хорошо обе системы На Винде некоторые вещи если и заводятся, то очень плохо
Ivan
Всем привет, никто не знает сервис чтобы рисовать свг области обьекта?
Ivan
https://t.me/JSlang если еще не спрашивал тут спроси
Pavel
Ajv ещё есть
Oleksandr
Всем привет! Кто-нибудь может подсказать, почему не приходят сообщения EventSource? Когда перезагружаю сервер, все сообщения вываливаются, но почему-то не в момент отправки (прокси прописал на 5000 порт)
Oleksandr
TTT
Как реализовывается блокирование доступа к данным во время работы над ними на микро сервисах?
TTT
Или при такой необходимости микросервисы придется обьеденять?
TTT
Если вкратце есть система состоящая из множества микросервисов, которые сейчас работают на одном сервере. Практически все микросервисы используют доступ к пользователям. Получается это выходит из их концепции?
TTT
Микросервисы это модули существующие независимо от других и которые _могут_ взаимодействовать между собой
TTT
Что-то не так?
🐴
общий data storage создает tight coupling между микросервисами. что идет вразрез с самой идеей, как я понимаю
🐴
вот у Фаулера
🐴
Microservices prefer letting each service manage its own database, either different instances of the same database technology, or entirely different database systems - an approach called Polyglot Persistence.
🐴
https://martinfowler.com/articles/microservices.html
TTT
При желании некоторые модули у меня можно запустить на отдельном сервере, просто сейчас они запускаются вместе, но большая их часть модулей в системе могут работать только вместе изза отсутствия возможности блокировать данные в других модулях
TTT
Вот эта большая часть модулей возможно не микросервисы
TTT
а один большой микросервис
TTT
Вопрос запуска на одном сервере это только вопрос железа
🐴
"изза отсутствия возможности блокировать данные в других модулях" - каплинг между сервисами.
🐴
я так вижу
TTT
TTT
Вот у меня на том что не трогает User-ов вариант а
TTT
ибо там идет только обращение к другому сервису для отправки данных по сокетам
🐴
Вот у меня на том что не трогает User-ов вариант а
ну так у тебя и проблема не там, как я понял
TTT
Да
TTT
Вот вопрос как это решить
TTT
Ибо сейчас это организуется с помощью redis-lock
🐴
наверно надо иначе разделить систему на части
TTT
Хотя кажется я идиот и попросту нужно вынести redis на отдельный сервер
TTT
и использовать redis-lock дальше
🐴
как это решит проблему?
TTT
Полностью? Пропадет полностью потребность обращаться напрямую к Node для блокирования данных, так как редис подключался через unix socket и я почему-то в голове себе представил, только возможность блокирования данных через свое АПИ, когда можно просто создавать инстанс АПИ на каждом микросервисе и дергать данные дальше из редиса
TTT
Данные в ноде все равно не хранятся
TTT
они хранятся в редисе и получается конкретный кусок данных
TTT
API.getUser(userId: int, writable: bool = false) API.getUserRow(userId: int, row: string, writable: bool = false) Вот так выглядит эта апишка В случае, если юзера нет в редисе все равно он там блокируется и запрашивается с маськи и монго все что нужно, после окончания работы над данными они попадают в редис, если юзер есть все так же, но без запроса в маську и монго.
TTT
если нужно получить readonly пользователя, то данные сразу отправляются в редис без блокирования и ожидания окончания работы над ними
TTT
Просто я себе это представлял по другому, ибо не вынес базы на другой сервер, но это похоже единственное правильное решение. И для уменьшения потерь при передаче данных, просто нужно сделать инстанс апи на сервере с БД для получения readOnly пользователей, чтобы туда сюда данными не метаться
TTT
Как по мне так вполне логично
TTT
Примерно так это будет выглядеть
TTT
Сейчас просто микросервисы которые трогают АПИ и/или Redis обьеденены вместе
🐴
я не спец, конечно. но мне кажется, что если штуки используют общее хранилище (общую схему), то между ними образуется тесная связь.
🐴
а это не особо хорошо
TTT
Это уже масштабируемость
🐴
не только
🐴
это значит схему не порефакторишь в контесте одного сервиса, надо делать с оглядкой на другой
TTT
А как без общего хранилища хранить пользователей?
TTT
Вот именно общие данные о них
TTT
логин там, количество денег
TTT
денюжки к примеру трогаются 90% сервисов
🐴
денюжки к примеру трогаются 90% сервисов
ну я где-то слышал мысль, что если такое происходит, наверно надо разделение на сервисы делать в другой плоскости
TTT
Данные о взаимодействии пользователей хранятся в монго Данные о действиях самого пользователя хранятся в маське и инфа о них Все это обьеденяет API и Redis
🐴
опять же, я не видел реально хороших примеров как делать микросервисы
TTT
Не, я конечно понимаю, высокая нагрузка на интернет канал у сервера с бд будет
TTT
Но не есть проблема разместить его в локалке с другими серверами
TTT
К примеру конечно
Denis
да ну можно же написать сервис
Denis
который будет распределять нагрузку на серверы с бд
Denis
в монге вот есть шардирование например
Denis
да ну можно же написать сервис
наверняка есть готовые решения в этой области
TTT
Ну понятное дело что можно использовать репликацию
TTT
к примеру