@nodejs_ru

Страница 372 из 2748
Andrey
28.11.2016
11:19:31
Всем добродневского! посоны. кто разбирался с хероку? Я имею открытый проект на гитхабе, который деплою в хероку. У меня (локально) есть апп-конфиг для приложения, и там есть секурные данные. Как в хероку доставить этот секурный конфиг на машину куда деплоится ?

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

Evgeny
28.11.2016
11:24:50
Anton
28.11.2016
11:25:17
или лучше через переменные окружения добавить? Но в моём конфиге есть вложенные структуры
Когда-то давным давно у меня был проект на хероку, и я юзал переменные окружения.

Google
Anton
28.11.2016
11:25:35
Ну как вариант - можно передавать JSON в переменную окружения

Никто же не запрещает

Andrey
28.11.2016
11:27:19
)) впринцыпе да, если других вариантов нет то придётся так

лол :) http://dapperdeveloper.com/2014/04/10/securing-configuration-files-with-node-for-travis-and-heroku/

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

Дмитрий
28.11.2016
11:38:25
я его юзаю
А можешь подсказать что по тому вопросу? TL TR - у меня часто обрывается соединение, а horseman при перезапуске соединения только мешает и ошибками сыплется

Evgeny
28.11.2016
11:38:41
соединение между кем и кем?

я не пончл из первого вопроса

Дмитрий
28.11.2016
11:44:10
Просто соединение через прокси с каким-либо сервером, прокси — вещь не очень стабильная и какой-то процент соединений просто обрывается, это норма. Проблема в том, что используя request/axios я просто получаю ошибку и отправляю реквест заново, простейшим образом, а в horseman каких-то адекватных механизмов для перезапуска чего либо я не нашёл

то есть вот длинная такая цепь действий horseman ... .click() .waitNextPage() .... , в середине что-то не срабатывает — ни перехватить это не получается ни перезапустить каким-то изящным способом

Дмитрий
28.11.2016
11:54:30
Он просто пролетает мимо, я не понимаю как такое вообще возможно, но факт

Google
Evgeny
28.11.2016
11:54:51
не пролетает, я тебе точно говорю - я сам решаю такую-же проблему так-же

Дмитрий
28.11.2016
11:54:58
Катч срабатывает, а дальше ошибка всё равно выпадает как ни в чем не бывало

Evgeny
28.11.2016
11:55:05
о.О

Дмитрий
28.11.2016
11:56:08
Я уже хз сколько сижу вкурить не могу как вообще так может быть. И на гитхабе в issues так же жалуются на абсолютный рандом

Ну и просто в катче перезапускать алгоритм это ппц. Вот клик — сначала надо узнать, на какой странице мы после ошибки оказались, потом вернуться на старт,потом ещё раз кликнуть

Изящный chain запросов разрывает вдоль и поперек такая мутотень, думал может как то ещё можно)

Evgeny
28.11.2016
12:05:18
Ставь катч после каждого шага

Или оберни все в прокси с кетчем

Дмитрий
28.11.2016
12:09:26
Я смотрел в сторону кастомных расширений, чтобы свои функции в horseman интегрировать и вызывать тогда всё это уже в нормальной форме, но они у меня не завелись почему то

Evgeny
28.11.2016
12:17:12
Странно, у меня несколько своих работают без проблем

Илья
28.11.2016
12:17:14
Всем привет, такой вопрос. Используя mongoose, можно ли сохранить массив? Например у меня есть модель Group и массив с группами. Или по одной только?

Pavel
28.11.2016
12:17:46
Давно работал с монгой

Но разве там нельзя просто всю группу сохранить?

Илья
28.11.2016
12:19:03
Но разве там нельзя просто всю группу сохранить?
ну в монго вроде есть insert many, но как это с помощью mongoose сделать не нашед. Видел только советы, сохранять по одной, но мне не очень нравится такой вариант

Pavel
28.11.2016
12:19:24
Тогда я пас

Николай
28.11.2016
12:22:14
http://mongoosejs.com/docs/api.html#model_Model.insertMany

Илья
28.11.2016
12:24:38
http://mongoosejs.com/docs/api.html#model_Model.insertMany
как я не заметил, спасибо

Николай
28.11.2016
12:25:38
Не за что. Вообще монгусовская дока отвратная. Я когда работал с гео-функциями, то тупо искал нужное по коду монгуса. Вернее не так, я сначала запилил нативно, а потом оказалось, что монгус может с доп рюшечками

Artur
28.11.2016
13:10:15
Кто нибудь работал с микросервисами через redis rpc ?

Vladimir
28.11.2016
13:12:47
не самая лучшая идея

Google
Artur
28.11.2016
13:15:52
не самая лучшая идея
Почему ? Я вот как раз хочу понять нафига так делают, я с таким сервисом интегрируюсь но не понимаю мотивацию его создания

Vladimir
28.11.2016
13:16:14
В первую очередь, потому что редис однопоточный

Кому-то может и достаточно, но в какой то момент просто перестанет справляться

Лучше RabbitMQ для этого - там есть встроенная поддержка RPC

Artur
28.11.2016
13:17:35
Окей, а зачем вообще RPC юзать какие преимущества если в двух словах ?

Vladimir
28.11.2016
13:17:58
Преимущества перед чем?

Artur
28.11.2016
13:18:19
REST

к примеру

Почему бы не взаимодействовать с микросервисом через REST обычный

Vladimir
28.11.2016
13:19:14
Ну REST на практике требует очень много времени на проектирование, API

RPC подход прост и надежен

Artur
28.11.2016
13:19:54
Ясно. Спасибо за разъяснения

Vladimir
28.11.2016
13:23:46
http://tonsky.livejournal.com/309037.html

Vladislav
28.11.2016
13:27:32
кто-то знает ffmpeg?

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

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

или какой-то интвервал обработки кусков файла

Славик
28.11.2016
13:37:54
в телеграмовском бот апи можно отредактировать сообщение, заменив в нем текст на фото?

Oleg
28.11.2016
18:27:33
max-old-data-size=4096 работает?

Схватили что нода вываливается с нехваткой памяти

Google
Paul
28.11.2016
18:38:24
работает

Pavel
28.11.2016
18:59:43
работал ли кто c promised-mongo интересует, как вы справлялись с обрывами коннекта с бд

Павел
28.11.2016
19:04:07
А почему не монгус?

Pavel
28.11.2016
19:11:40
А почему не монгус?
странный вопрос, если честно.

Igor
28.11.2016
19:19:00
А что такое promised-mongo?

я люблю грин дей
28.11.2016
19:19:59
А что такое promised-mongo?
чисто предположу, обертка драйвера монги с промис апи

Admin
ERROR: S client not available

Igor
28.11.2016
19:20:31
Ну типа э драйвер вроде и так с промисами?

Amir
28.11.2016
19:23:39
rpc на практике говно

Pavel
28.11.2016
19:24:00
а это что и ссылку можно?

Amir
28.11.2016
19:24:08
Большой оверхед слишком

я люблю грин дей
28.11.2016
19:24:14
а это что и ссылку можно?
https://github.com/zxdong262/promise-mongo

Pavel
28.11.2016
19:24:50
promiseD-mongo

KlonD90
28.11.2016
19:24:56
там же сам драйвер уже возвращает промисы

я люблю грин дей
28.11.2016
19:26:06
promiseD-mongo
ну я так смотрю, это альтернативная библиотека

которая, наверняка, уже также нафиг не нужна

Pavel
28.11.2016
19:26:16
спросил про одно, рассказали другое :) ну вот как обычно :) не важно, как в обычном драйвере бороться с дисконектами с монгой?

я люблю грин дей
28.11.2016
19:26:17
ведь монга и сама дает промисы

Pavel
28.11.2016
19:26:51
да я понял уже, просто проект уже работает на той либе и вполне себе успешно

я люблю грин дей
28.11.2016
19:27:19
спросил про одно, рассказали другое :) ну вот как обычно :) не важно, как в обычном драйвере бороться с дисконектами с монгой?
Я нубас, но есть предположение. Ты единожды устанавливаешь соединение и потом просто запросы делаешь?

Google
Pavel
28.11.2016
19:27:54
да, но проблема в том, как проверять коннект с бд?

чтобы в случае чего переподключиться

я люблю грин дей
28.11.2016
19:30:20
У меня ощущение, что подключаться надо отдельно для разных запросов, так как код в доках монгуса в примерах лежит не внутри коллбека подключения какого-то

equicolor
29.11.2016
05:49:20
Привет, NodeJS коммьюнити! У меня есть вопрос про настройку nginx в качестве фронт-енда перед node приложением. Nginx проксирует запросы приложению и все хорошо. Но если я перезапускаю сервер, nginx-у некуда проксировать и в этот момент он отдает 502 Bad Gateway. Нужно, чтобы nginx подождал пока приложение перезапустится. Судя по документации, мне должны помочь деректива upstream и параметр fail_timeout. Но это не работает. Max_fails пробовал ставить в 0 (отключить лимит) - то же самое. Вот конфиг с попытками все наладить server { ... location / { ... proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; proxy_pass http://client; } } upstream client { server 127.0.0.1:8080 fail_timeout=30s max_fails=6000; } Похоже, я что-то не правильно делаю или не понимаю, как работают fail_timeout и max_fails. Кто нибудь сталкивался с таким? Заранее спасибо

Bogdan
29.11.2016
06:04:19
2 процесса node, один перезапускаешь, потом второй ?

equicolor
29.11.2016
06:08:36
2 процесса node, один перезапускаешь, потом второй ?
Откуда два? ) Речь сейчас об одном, это касается только его. Второй есть, но он работает всегда. Т.е. проблема имеено в проксировании nginx до приложения-клиента

Bogdan
29.11.2016
06:11:32
поднимаешь не один процесс приложения а 2 и делаешь через load balancing upstream app_example { least_conn; # Use Least Connections strategy server 127.0.0.1:9000; # NodeJS Server 1 server 127.0.0.1:9001; # NodeJS Server 2 }

и потом по очереди перезапускаешь

и не получашь 502

equicolor
29.11.2016
06:12:39
А, понял! Получается, если у меня помимо клиента есть еще сервер на другом порту, с ним можно проделать тоже самое в другом upstream?

Идею понял, спасибо!

Bogdan
29.11.2016
06:13:04
ок

equicolor
29.11.2016
06:13:18
Но непонятно, все-таки, почему fail_timeout не работает

Bogdan
29.11.2016
06:18:36
ты на реальной (production) машине проверял или для теста поднимал ? потому что ты все зависит от того сколько в данный момент пытается подклчиться и сколько процесс поднимается

equicolor
29.11.2016
06:20:10
минимальный дроплет на digital ocean, коннекты только от меня

время между рестартами около секунды, я успеваю обновить страницу в браузере и ловлю 502

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