
Сергей
26.05.2017
15:36:46
интересно, как он выглядит в разных проектах.. пишу одну штуку, для упрощения описания роутинга

Вишневый чай
26.05.2017
15:38:36

Сергей
26.05.2017
15:40:45
хотел фидбек получить от тех у кого есть роуты

Sergey
26.05.2017
15:42:03
я могу кинуть, как у меня, только там специфично

Google

Сергей
26.05.2017
15:43:02

Sergey
26.05.2017
15:43:41

Сергей
26.05.2017
15:43:52
спасибо

Sergey
26.05.2017
15:44:57

Rafael
26.05.2017
15:47:13

Сергей
26.05.2017
15:48:25

Rafael
26.05.2017
15:49:13
Вложенные пути · GitBook
https://router.vuejs.org/ru/essentials/nested-routes.html
Кстати сейчас сам пишу подобную штуку для клиентской части: только не для роутинга, а для обращения к REST API

Сергей
26.05.2017
15:55:10

Rafael
26.05.2017
15:56:26
Но пока проект заглох

shadowjack
26.05.2017
16:05:26
Подскажите хороший видеокурс по ноде?

Google

Sasha
26.05.2017
16:07:27
ребят, а как точнее работает async/await?
async getWallets() {
try {
const users = await this.db.getUsers();
const essences = users.map(user => this.db.getEssences(user.uniqueId));
const wallets = await Promise.all(essences);
return wallets;
} catch(err) {
console.log(err);
}
}
просто вот тут у меня все ломается на моменте
const wallets = await Promise.all(essences);
я определенно что-то делаю не так, или ошибка не здесь?

Сергей
26.05.2017
16:09:05
как ломается

Ilya
26.05.2017
16:10:23
await (()=> Promise.all...)()

shadowjack
26.05.2017
16:11:58

Ilya
26.05.2017
16:12:38
А. Ретурн из асинка обязательно. Так что можешь не ловить исключение
Само поймается
И в режект упадет
Но вообще Promise.all в асинке.... Бггг

Sasha
26.05.2017
16:17:14
как ломается
на самом деле ломается так, что в монге не коннектится и вот я думаю, может он слишком много коннекшенов открывает? внутри await все работает синхронно, или вместе?

Сергей
26.05.2017
16:17:23


Sasha
26.05.2017
16:20:00
просто почитай стандарт
там всё подробно описано
а если к монге не коннектится, то возможно проблема не в этом месте
this.getEssences = (tuid) => {
return new Promise((resolve, reject) => {
MongoClient.connect(this.url, (err, db) => {
if (err || db == null) {
reject('Failed to connect to DB. Try again later');
}
try {
var collection = db.collection('data');
collection.find({
ztuid: tuid
}).toArray((err, result) => {
if (err) {
reject(err);
}
resolve(result);
});
} catch(err) {
reject('collection error');
}
if(db != null)
db.close();
});
});
}
1. if(db != null) {db.close();} - как мне кажется - не лучшая практика
2. вот у меня все улетает в reject('Failed to connect to DB. Try again later');

shadowjack
26.05.2017
16:20:26

vitaliy
26.05.2017
16:22:15
MongoClient.connect промис возвращает, кстати

Ilya
26.05.2017
16:22:17
Да хз. Я бы then тогда после писад

shadowjack
26.05.2017
16:22:57
await и придумали чтобы .then не писать
Или yield в генераторах

Aleh
26.05.2017
16:34:14
ну yield не совсем для этого, но await и promise.all совсем норм

shadowjack
26.05.2017
16:43:26
https://youtu.be/QO07THdLWQo
Вот так извращались с асинхронностью до async/await

Google

shadowjack
26.05.2017
16:46:08
Собственно async/await это синтаксический сахар для вот этого.

Ilya
26.05.2017
16:47:24
Мы как только не изгалялись. И с рекурсиями по списку и с джоблистами чтоб убедиться что все запустили. Эх

Rafael
26.05.2017
16:48:24
посоны, есть чат по линуксу? можно линк?

Vladimir
26.05.2017
16:48:56

Rafael
26.05.2017
16:49:03
а то у моей федры dns резолвер полетел и мои потуги не решают проблему :С

shadowjack
26.05.2017
16:50:28
Временно впиши в /etc/resolv.conf (до рестарта).

Rafael
26.05.2017
16:51:03
прикол в том, что этого файла там впрнципе нет
там все разруливает susyemd-resolved, но чтение манов и попытка поправить конфиги ничего не решили

shadowjack
26.05.2017
16:51:56
Хм, извращенцы.

Rafael
26.05.2017
16:52:21
вот вот, а ведь мог и дальше на арче сидеть, что меня дернуло поставить эту дрянь :/
так есть ссылка на чат для линуксоидов?

Dmitrii
26.05.2017
17:03:47
Кто как права доступа и группы разруливает в Express / koa?

Вишневый чай
26.05.2017
17:04:40
А в чем проблема

Dmitrii
26.05.2017
17:06:05
Просто думаю как это правильно организовать все
Примеры может есть какие

Vsevolod
26.05.2017
17:16:46
У меня сваггер прикручен для прав
Не только для этого, но и доступ можно разграничить

Dmitrii
26.05.2017
17:17:39
Это что за либа?

Vsevolod
26.05.2017
17:20:23
Это штука для описания апи с помощью сваггер файла
И есть либа swagger-node для интеграции с нодой

Google

Dmitrii
26.05.2017
17:21:19
спасибо надо глянуть
а на aws lambda строит кто нибудь апи? как оно ?

Vsevolod
26.05.2017
17:23:13
У нас пару хуков вертится через апи гейтвей
Но апи на бинстолке

Dmitrii
26.05.2017
17:25:14
у нас тоже на бинстолке, думаю есть ли смысл на lambda писать все

Vsevolod
26.05.2017
17:26:09
Надо считать по деньгам

Admin
ERROR: S client not available

Vsevolod
26.05.2017
17:27:09
И я не уверен как оно латенси всего этого будет

Dmitrii
26.05.2017
18:01:27

Vsevolod
26.05.2017
18:02:23
и кластером по процессам спавните?

Dmitrii
26.05.2017
18:03:11
ну да через pm2
хотя я думаю еще про вариант несколько контейнеров докера + nginx как балансер

Vsevolod
26.05.2017
18:03:58
да, тоже как вариант
у нас одноядерные крутятся
но думаем переходить на инстансы побольше
из-за enhanced network-инга

Dmitrii
26.05.2017
18:06:04
всеравно это все много времени отнимает по обслуживанию, что вручную поднять все на железе, что beanstalk, поэтому и смотрю на лямбду

Vsevolod
26.05.2017
18:06:50
да, 15-20 минут у меня на 2 инстанса бинстолка разворачивается это сейчас
докер немного быстрее разворачивается

Google

Dmitrii
26.05.2017
18:07:26
еще же сконфигурировать все надо по началу

Vsevolod
26.05.2017
18:07:46
ну раз сконфигурировал и все :)
лямбду то тоже надо будет деплоить как-то

Dmitrii
26.05.2017
18:07:57
прям как вебпак ?
как минимум знаю минус у лямбы, это облом с вебсокетами

Vsevolod
26.05.2017
18:10:01
вообще где-то в статье читал, что лямбда выходит дешевле инстанса, если памяти много не выжирает

Dmitrii
26.05.2017
18:11:26
интересно засунуть целое express/koa приложение в одну лямбду это норм или зашквар? по бабкам скорее дороже выйдет чем api gateway + много лямбд

Vsevolod
26.05.2017
18:12:21
я как апи гейтвей будет тогда именно к этой лямбде конектится?

Dmitrii
26.05.2017
18:12:56
ну по маске как нибудь все запросы?

Vsevolod
26.05.2017
18:16:40
Просто как оно будет именно к этой лямбде подключатся, а не запускать новую

Dmitrii
26.05.2017
18:17:40
а зачем каждый раз к ней? можно же новую
если апп стейтлес

Vsevolod
26.05.2017
18:17:52
А, я что-то гоню :)
Вообще можно я думаю, все параметры запроса можно в лямбду прокинуть, сейчас это даже легче стало
Роутер надо будет самому сделать наверн

Dmitrii
26.05.2017
18:18:55
да
мне просто надо будет graphql интерфейс строить, и пока думаю, на beanstalk либо в лямбду засунуть

Vsevolod
26.05.2017
18:19:24
Я бы проверил как быстро лямбда будет запускать код и отвечать
И где-то читал что вообще есть ограничение на одновременное количество работающих лямбд, но не помню точно