@nodejs_ru

Страница 2435 из 2748
Sklyarov
21.08.2018
09:25:44
Его тоже до любого вывода надо отправлять
значит требуется клиентский код который не найдя кук будет рефрешить страницу

Sheldhur
21.08.2018
09:27:02
А тебе её надо из жс на странице получить?

На хрена это в куки тогда пихать, если можно в теле страницы отдать?

Little
21.08.2018
09:27:25


Google
Sheldhur
21.08.2018
09:28:49
Ахахаа

Пиздец какой

Так их все смогут прочитать тогда

Если у тебя Кука не httpOnly

Sklyarov
21.08.2018
09:29:29
Sheldhur
21.08.2018
09:29:47
Ну и о какой секурности ты говоришь?

Sklyarov
21.08.2018
09:30:36
?

знаю я что это не очень.. но требуется быстрое техническое решение

Gleb
21.08.2018
09:31:03
nginx настраивается на проксирование на один порт, как будто у тебя одна нода

а pm2 запускается в кластерном моде, например на 4 инстанса

Google
Sheldhur
21.08.2018
09:31:51
Это пиздец

Gleb
21.08.2018
09:32:06
если у тебя сокеты, то тебе либо пилить какую-то логику чтобы всегда сбрасывать подключение на одну ноду, либо вешать их на всех

первый варик это геморой )

Sklyarov
21.08.2018
09:32:31
Влад
21.08.2018
09:33:03
если у тебя сокеты, то тебе либо пилить какую-то логику чтобы всегда сбрасывать подключение на одну ноду, либо вешать их на всех
а nginx я могу типо сам указать как балансить через ip_hash и распределять на разные порты инстансов

Sklyarov
21.08.2018
09:35:13
Это пиздец
ок, нужен полноценный рендер на сервере если не хочешь плеваться ключами в клиент. но полноценный рендер на сервере за полчаса не сделаешь

Sheldhur
21.08.2018
09:35:17
ну pm2 балансит только по одному алгоритму типо по очереди правильно?
В общем суть в том, что с CP у тебя будет один родительский процесс и вот он и захлебнется от за просов и дочерние ему никак не помогут. Если ты сделаешь несколько независимых процессов и будешь запросы через ноду раскидывать то это произойдёт не так быстро

Влад
21.08.2018
09:40:58
чтоб nginx балансил подключенного юзера всегда на один и тот же инстанс используюется директива ip_hash? (используются сокеты нужно поддерживать подключение)

Gleb
21.08.2018
09:42:09
https://nodejs.org/api/cluster.html#cluster_how_it_works

по дефолту round-robin

Влад
21.08.2018
09:44:55
https://nodejs.org/api/cluster.html#cluster_how_it_works
ну и какой же конфиг будет под сокеты?

Gleb
21.08.2018
09:47:43
ну тот же кластер, а для сокетов нужно какое-то отдельное решение. если у тебя сокетио, то там есть адаптер для редиса

как раз для кластерного варианта

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

вариант с адаптером позволяет запустить вообще на независимых машинах сколько тебе нужно инстансов ноды

Влад
21.08.2018
09:50:07
ну тот же кластер, а для сокетов нужно какое-то отдельное решение. если у тебя сокетио, то там есть адаптер для редиса
ну у меня сейчас и стоит адаптер, просто мне не нравится что каждый инстанс это новый порт

Gleb
21.08.2018
09:50:42
тогда я не понял, как ты запускаешь инстансы. pm2 cluster как раз создает инстансы на одном порту

Влад
21.08.2018
09:52:35
при создании приложения подтягивается NODE_APP_INSTANCE от pm2 это равно id инстансу получается типо port: 8000 + NODE_APP_INSTANCE

Google
Gleb
21.08.2018
09:53:00
ага, понял. а зачем ты это делаешь?

Влад
21.08.2018
09:53:15
nginx как бансировщик

в апстрим прописываются все порты

Gleb
21.08.2018
09:53:38
я понял

ты хочешь балансить нджинксом, но при этом использовать один порт, да?

Влад
21.08.2018
09:54:15
ну видимо так не получится

а так да хотелось бы=)

Gleb
21.08.2018
09:54:44
ну а почему не балансить нодой?

ну типо дефолтно как пм2 делает

Влад
21.08.2018
09:55:01
pm2 round robin фигачит

а мне нужно чтоб каждое взаранее уставноелвенное соединение так и работало за тем инстансом, который был первоночально установлен

Gleb
21.08.2018
09:56:20
ясно, короче стейтфул

Влад
21.08.2018
09:56:29
ну либо все приложение в редис переводить=)

ясно, короче стейтфул
у тебя есть какие нибудь решения?)

Gleb
21.08.2018
09:57:29
ты мне объясни, зачем тебе держать соединение на одном инстансе, я вот это не пойму

точней так, соединеие так и будет на одном инстансе, пока ты его не прервешь. если говорить про сокеты

Влад
21.08.2018
09:58:04
чтобы все приложение под редис не переписывать

Gleb
21.08.2018
09:58:57
наверно надо больше инфы о приложении, что кроме сокетов там может быть проблемой

Влад
21.08.2018
09:59:15
ты мне объясни, зачем тебе держать соединение на одном инстансе, я вот это не пойму
хорошо потесчу если будут вопросы я тебе отпишу в личку оке?)

Gleb
21.08.2018
09:59:25
да без проблем

Google
Andrei
21.08.2018
10:03:47
Это уже в школах преподают помоему
по этому поводу со мной произошла не так давно такая история: у меня родственник начал учить JavaScript, попросил меня помочь. он дядька уже в годах, но очень толковый и грамотный, да ещё и с техническим опытом. телевизоры чинил когда я ещё под стол ходил, на сях писал когда то давно, да и с программистами общается чуть не каждый день как менеджер. в общем что такое переменная ему объяснять не надо. в общем порекомендовал я ему пару ресурсов по js, он их изучил, научился писать на js на базовом уровне. и дальше он спрашивает, ок, теперь я умею писать на js, я хочу сделать простой сайт, что мне делать. ну и поехало, как снежный ком. HTML, CSS, DOM, HTTP, базы данных, node.js, npm, front-end фреймворки, Web Sockets, jsonp, OAuth, REST, GraphQL и так далее, также куча более абстрактных вещей, начиная от SOLID, GoF, TDD, DDD, whateverDD, MVC, MVVM, SOA, и прочее и прочее. и на каждый концепт ну как минимум месяцок желательно я думаю, чтобы хоть что-то понять

еще облака конечно, тоже непаханное поле

и это только базовый уровень - пара лет. а практический опыт? например чтобы нормально научиться работать с front-end framework, как правило нужен год.

для того чтобы освоить облачную платформу на нормальном уровне, нужен 1-1.5 года

и так далее

Andrei
21.08.2018
10:16:04
ангулар, реакт. vue мб поменьше

ну представь, с нуля

Gleb
21.08.2018
10:17:07
Ребята, кто работал с node-telegram-bot-api подскажите как лучше поступить: Есть бот, который шлет сообщения нужным юзерам, по факту появления этих сообщений в базе. Нужно обработать кейс, когда пропадает сообщение с Телеграм (интернет пропал итд). Как отловить момент появления соединения? ничего подобного bot.on ('connect', ()=>{}) я не нашел..

Таймураз
21.08.2018
10:19:22
чтобы все приложение под редис не переписывать
Я не всю переписку прочел, но лучше переписать по редис

Все сущности должны быть заменяемы- упала одна- работа продолжилась с другой

Danil
21.08.2018
10:21:17
Подскажите как в схему mongoose указать другую схему. Есть схема storySchema и есть userSchema у юзера есть поле, которое должно соотвтетствовать storySchema

Danil
21.08.2018
10:22:44
Спасибо

?
21.08.2018
10:35:04
Ребята, кто работал с node-telegram-bot-api подскажите как лучше поступить: Есть бот, который шлет сообщения нужным юзерам, по факту появления этих сообщений в базе. Нужно обработать кейс, когда пропадает сообщение с Телеграм (интернет пропал итд). Как отловить момент появления соединения? ничего подобного bot.on ('connect', ()=>{}) я не нашел..
Не помню, что там для такого в принципе в ноде предусмотрено, но как вариант - ping ya.ru/google.com, не? А вообще, зачем проверять соединение на клиенте? Пусть отсылает уведомления о прочтении: отослал, отчёт пришёл - юзер сообщение обработал, нет отчёта - значит и сообщение никто не видел/не читал.

Google
?
21.08.2018
10:39:56
Gleb
21.08.2018
10:40:51
Не помню, что там для такого в принципе в ноде предусмотрено, но как вариант - ping ya.ru/google.com, не? А вообще, зачем проверять соединение на клиенте? Пусть отсылает уведомления о прочтении: отослал, отчёт пришёл - юзер сообщение обработал, нет отчёта - значит и сообщение никто не видел/не читал.
ну тоесть, сообщения шлются в автоматическом режиме, по факту записи их в базу. Соединение с телеграм прервалось ( Роскомнадзор заблочил, у нас интерент пропал, хз что может быть..) Сообщения в базе копятся, соответственно по факту появления коннекта с ботом, нужно сообщения отправить... Вопрос как установить факт коннекта?

Nell
21.08.2018
10:41:02
Хз, у меня на хостинге полтора года подряд интернет не пропадает... ? Не надо, наверное, до такой уж степеи всё предусматривать

?
21.08.2018
10:43:30
прверять соединение, для того, что б сделать выборку по базе неотосланных сообшений и отослать их...
Ты отсылаешь сообщение, бот их получает, отправляет "отчёт о доставке", ты удаляешь сообщение из очереди. Нет отчёта - не удаляешь, ждёшь, пока предыдущий не придёт (скажем, день, если сообщений/юзеров не много). Пришёл отчёт - повторяем цикл.

Nell
21.08.2018
10:43:43
спасибо доктор.
? Обращайся

Gleb
21.08.2018
10:46:09
идея рабочая, но так не пойдет. Нельзя опираться на очередь в памяти. Нужно работать только с базой. Это кейс.
и еще почему-то при отключении инета polling не срабатывает. Хотя по умолчанию polling.params.timeout стоит в 10 сек, и насколько я понимаю, по истечении этих 10 сек должен выскакивать polling error

?
21.08.2018
10:53:10
идея рабочая, но так не пойдет. Нельзя опираться на очередь в памяти. Нужно работать только с базой. Это кейс.
Ну так храни в базе и проверяй перед отправкой. Вообще, кажется в апи должно быть предусмотрено нечто подобное.

Gleb
21.08.2018
10:54:28
Ну так храни в базе и проверяй перед отправкой. Вообще, кажется в апи должно быть предусмотрено нечто подобное.
там сообщений докера. Перед отправкой каждого сообщения проверять -есть ли не отосланные, это ппц...

?
21.08.2018
10:59:53
там сообщений докера. Перед отправкой каждого сообщения проверять -есть ли не отосланные, это ппц...
Тоже вчера поймал себя на мысли, что пытаюсь утолстить клиент больше, чем это нужно.. Обещал себе больше так не делать. Так, хорошо. Как ты с клиента, у которого нет сети, хочешь что-то отправить на сервер?

Gleb
21.08.2018
11:02:40
Тоже вчера поймал себя на мысли, что пытаюсь утолстить клиент больше, чем это нужно.. Обещал себе больше так не делать. Так, хорошо. Как ты с клиента, у которого нет сети, хочешь что-то отправить на сервер?
а тут не факт, что у меня нет сети. Предположим Роскомнадзор набедокурил. Да и когда у меня сеть пропадает, почему-то polling уккщк не срабатывает...

?
21.08.2018
11:08:12
а тут не факт, что у меня нет сети. Предположим Роскомнадзор набедокурил. Да и когда у меня сеть пропадает, почему-то polling уккщк не срабатывает...
Не суть. В любом случае при таком раскладе клиент будет недоступен. Для этого и существует поллинг, чтоб решать вопросы доставки при отсутсвии фактического соединения "здесь и сейчас". И скорее всего дело даже не в том, как проверять/не проверять, а в том, что где-то у тебя с поллингом что-то не то.

Maxim
21.08.2018
11:28:16
привет, есть приложуха, на serverless, + twilio (отправляет SMS с кодом для авторизации). собствеено, подскажите, можно ли как-то подконектить свой номер к какой-либо апишке/либе и через неё мониторить приходящие сообщения? желательно без установки софта на телефон

Ivan
21.08.2018
11:30:12


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