@nodejs_ru

Страница 2514 из 2748
Nikolay
07.09.2018
10:36:55
ну хотя бы потому что реббит гораздо сложнее
+ не хочется тащить лишнюю зависимость в виде кролика. Проект точно не хайлоад

rddlr
07.09.2018
10:53:09
@fuabzop есть такое timeout: number; // The number of milliseconds after which the job should be fail with a timeout error

"Если задача не успела запуститься за определенное время MAX_DELAY (например есть более приоритетные или очередь "занята") - она должна зафейлиться через это время"

Google
rddlr
07.09.2018
10:54:12
Bull

Nikolay
07.09.2018
10:54:34
Bull
спасибо, попробую. Сейчас как раз его смотрю

rddlr
07.09.2018
10:54:51
я его и юзаю, пока полет нормальный

Kylych
07.09.2018
11:40:28
у вас не было такой проблемы { awdawd: { Bucket: undefined, Key: 'audios/1536320392632', Body: <Buffer 49 44 33 03 00 00 00 00 41 54 41 50 49 43 00 00 17 19 00 00 00 69 6d 61 67 65 2f 6a 70 65 67 00 00 6d 70 33 2e 6a 70 67 00 ff d8 ff e0 00 10 4a 46 49 ... >, ACL: 'private', ContentType: 'audio/mpeg', CacheControl: 'max-age=31536000' } } (node:17094) UnhandledPromiseRejectionWarning: Error: params.Body is required



Josh
07.09.2018
11:47:06
и зачем тебе асинк тут конкретно?

Mishell
07.09.2018
11:50:20
помимо этого в ноде еще висят колбеки, евенты и т.п.?
Да, в финальной версии в ноде висит много разного. Но вот эта функция в примере - это чисто тестовый файлик. Просто бросается запросами. Асинк потому что изначально там были эвейты, но теперь нет. Оставил асинк просто потому что забыл что он там вообще написан. Так вы это ведёте к тому, что из-за нагрузки на ноду запрос летит медленно и дело не только в днс?

Но там ведь нет никаких сложных расчётов. Просто бросить запрос и получить ответ.

Josh
07.09.2018
11:51:35
тут нет, а обработка других может мешать

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

Mishell
07.09.2018
11:54:50
Понял. Я ещё и на Го тестами покрыть хочу, вроде он в разы быстрее соображает. Но мне кажется что дело все таки не в этом. Моё расширение в хроме которое выполняет теже запросы - довольно нагружено, но запросы в разы быстрее. Видимо действительно нужно сейчас решать с кэширование ДНС, которое в хроме присутствует.

Google
Josh
07.09.2018
11:54:55
ну и браузер с нодой на одной машине?

го не быстрее принимает сокет, инфа сотка, там нет прироста скорости ни на пикосекунду

Mishell
07.09.2018
11:56:58
Го быстрее работает с ядром ОС. Вы же именно на это намекаете, что из-за побочных продуктов, циклов, ивентов нода может быть медленнее. В случае с Го - сама работа кода куда быстрее. Но да, интернет соединения везде одинаковы я думаю.

Josh
07.09.2018
11:57:01
днс не должен так долго резолвить, для скорости проверки можно ип чисты вбить

Mishell
07.09.2018
11:57:35
ну и браузер с нодой на одной машине?
Тесты довольно чистые, проводятся на разных серверах, Италия, Чехия, Украина, окружающая среда сведена к минимуму.

И на любых серверах расширение хрома всегда быстрее, чем запросы из ноды.

Josh
07.09.2018
11:58:37
ну может у вас пинг от ноды с америки, а мы тут виним код

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

Enterpise
07.09.2018
12:09:05
господа!

как поставить на ноде npm пакет в режиме оффлайн , если регситри блокирован ?

есть ли аналог jar download ?

или yarn

Mishell
07.09.2018
12:19:17
А я не совсем понял как совершать запрос по чистому ip. Вот смотрите. Есть url https://api.etherscan.io/api? и там ещё длинная ссылка с приватными ключами и тд. Мне известно что ip ресурса 23.111.151.66 Если открыть в браузере IP - я попадаю на сайт Windows Server. Если реквестить по этому ip из ноды то я просто получаю ошибку Invalid URI. Если реквестить http://23.111.151.66/api? то ошибка 404 File or directory not found Если реквестить по https - то получаю ошибку, что этот IP не в списке сертификата или вроде того. В общем как нужно зарезолвить ДНС в каком виде его вбить, что бы попасть куда мне нужно?

Josh
07.09.2018
12:20:06
httpS?

Mishell
07.09.2018
12:20:25
httpS?
Если реквестить по https - то получаю ошибку, что этот IP не в списке сертификата или вроде того.

httpS?
Unhandled rejection RequestError: Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: IP: 23.111.151.66 is not in the cert's list

Сергей
07.09.2018
12:21:35
домен это часть роутинга

как сервер поймет какому сервису отправить запрос? на одном IP может крутиться дохрена сервисов

Josh
07.09.2018
12:22:34
может, но вдруг тут прокатило бы

Google
Josh
07.09.2018
12:22:50
тем более виндасерв

в любом случае тут явно дело не в резолве

тем более это апи, копеешный трафик

Сергей
07.09.2018
12:25:01
нда

ну ебись тогда

Mishell
07.09.2018
12:25:06
как сервер поймет какому сервису отправить запрос? на одном IP может крутиться дохрена сервисов
А как этот вопрос решается в хром расширении? Мне выше говорил человек, что сначала резолвится ДНС. То есть хост становится IP. На это я так понимаю расходуется время запроса. В сети находил инфу, что из-за этого, если не кэшировать днс - скорость запроса действительно может заметно просесть. Но даже если дело не в ДНС, и я не верно копаю, то тогда вообще непонятно почему из хрома запросы быстрее, чем из ноды. Не понимаю чем обусловлено.

Josh
07.09.2018
12:25:43
ну ебись тогда
я то тут причем

Kelin
07.09.2018
12:25:53
Mishell
07.09.2018
12:25:58
ну ебись тогда
Хотелось бы писать эффективный код, а выходит пока только так.

Josh
07.09.2018
12:27:44
да не в кешировании тут дело, сделай запрос с ноды без лишнего

Josh
07.09.2018
12:28:39
200мс на строку апи, серьезно? там 200нс много

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

Mishell
07.09.2018
12:30:38
да не в кешировании тут дело, сделай запрос с ноды без лишнего
Так и сделал. 200-300мс запрос скачет. Код выше я приложил как запрос делался. Без циклов, без лишнего. Замеряю время, делаю запрос, получаю ответ, снова замеряю время и выходит долго. В хроме - 120мс. У меня уже чувство что нода мне врет. Это сильно долго.

Josh
07.09.2018
12:46:43
Так и сделал. 200-300мс запрос скачет. Код выше я приложил как запрос делался. Без циклов, без лишнего. Замеряю время, делаю запрос, получаю ответ, снова замеряю время и выходит долго. В хроме - 120мс. У меня уже чувство что нода мне врет. Это сильно долго.
EXECUTION TIME: 92.185442 EXECUTION TIME: 96.02537199999999 EXECUTION TIME: 97.78338 EXECUTION TIME: 98.78103999999999 EXECUTION TIME: 104.43560699999999 EXECUTION TIME: 110.835949 EXECUTION TIME: 140.460499 EXECUTION TIME: 163.727746 EXECUTION TIME: 167.975314 EXECUTION TIME: 169.397739 EXECUTION TIME: 180.25635599999998

Josh
07.09.2018
12:47:54
да, разницы нет, в мс же

тут и даты хватит

Mishell
07.09.2018
12:50:44
тут и даты хватит
А можно посмотреть код?

Google
Josh
07.09.2018
12:51:05
const perf = require('execution-time')() const https = require('https') const test2 = () => { setInterval(() => { https.get('https://api.etherscan.io/api?', res => { const results = perf.stop() console.log(`EXECUTION TIME: ${results.time}`) }) }, 200) } test2()

Josh
07.09.2018
12:52:01
шаблон на новой странице такой был, не убрал

Mishell
07.09.2018
12:56:56
шаблон на новой странице такой был, не убрал
Спасибо, пойду ковырять. Что-то у меня явно пошло не так в тестировании.

Josh
07.09.2018
13:01:31
Спасибо, пойду ковырять. Что-то у меня явно пошло не так в тестировании.
They support both GET/POST requests and a rate limit of 5 requests/sec. к тому же не так уж и важно тут за мс бороться, "режим реального времени" до 7с в нулевых был, нынче около 3с

Andrew
07.09.2018
13:04:02
12 == true //false Boolean(12) //true

Admin
ERROR: S client not available

Andrew
07.09.2018
13:04:07
wtf js? Почему так

Mishell
07.09.2018
13:05:06
They support both GET/POST requests and a rate limit of 5 requests/sec. к тому же не так уж и важно тут за мс бороться, "режим реального времени" до 7с в нулевых был, нынче около 3с
Это смотря для каких целей. Мне нужно поднять систему маленьких серверов которые реализуют эти 5req/sec только запущены с разным равным интервалом. Что бы сервера максимально быстро получали свежие данные. Там люди на всё готовы, что бы урвать первыми свежие данные. По этому чем быстрее я получаю свежак, тем лучше.

Gleb
07.09.2018
13:06:35
гайс, кто нибудь генерил видосы на сервере? не обязательно нодой )

Josh
07.09.2018
13:07:10
12 == true //false Boolean(12) //true
потому что надо почитать теорию сравнения типов в js

и в данном случае все очень даже логично

Bodya
07.09.2018
13:12:03
Learn javascript ru говорит что при таком сравнении жс приводит true к 1, т.е. 1 == 11 https://learn.javascript.ru/types-conversion

12 == true //false Boolean(12) //true
Может я ошибаюсь, но вроде так и есть

Mishell
07.09.2018
13:15:24
ну тогда надо с сети их брать, а не сервиса, разве эзериум не умеет так?
На текущий момент этерскан предоставляет апи и свежие данные довольно быстро. Быстрее многих других централизованных сервисов которые мониторят крипту. Я сейчас не совсем понял, предлагаете мне к децентрализованным блокчейн технологиям напрямую коннектится? То есть делать то, что делает этерскан? Я откровенно без понятия как это работает.

Josh
07.09.2018
13:15:26
12 == true //false Boolean(12) //true
обычно это так делается let cond = 12 if (!!cond)

Andrew
07.09.2018
13:16:03
обычно это так делается let cond = 12 if (!!cond)
ну с приведением типов мне всё понятно. Там же ниже строчка с привидением у меня

вопрос по тому, что "==" тоже приводит типы

Google
Andrew
07.09.2018
13:16:20
согласно докам

куда, соб-сно ты меня и послал)

Bodya
07.09.2018
13:17:14
вопрос по тому, что "==" тоже приводит типы
Ну, и приводит true к 1, а false к 0

Vladimir
07.09.2018
13:18:27
гайс, кто нибудь генерил видосы на сервере? не обязательно нодой )
Сейчас занимают подобным на го. Какая именно у тебя задача?

Mishell
07.09.2018
13:21:36
для своего сервиса это минус 1 лишнее звено, туда-сюда траф не надо гонять к стороннему сервису
Я если честно в крипте не очень хорошо разбираюсь, делаю для команды посторонних людей, но вы меня заинтересовали. Имеет ввиду Ethereum Wallet на https://www.ethereum.org/ который они предлагают скачать?

Josh
07.09.2018
13:22:09
консольный вариант с гитхаба

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

Josh
07.09.2018
13:23:42
насчет конкретно эзера я не уверен как там кошелек у них, в свое время я его еле скомпилил, премайна было овердохренища, потому что ежику понятно, что это шедевр и одно из величайших достижений человечества

проблема давняя с местом на дисках, что все блоки тянуть надо, потому и существуют сервисы

Mishell
07.09.2018
13:29:01
@letitcode Вообще большое спасибо, вы очень помогаете. Буду сейчас копаться. У меня только 1 вопрос назрел на тему пинга. Вот например от Чехии(сервера там) до этерскана пинг 118мс. А запросы к апи оттуда летят 120-190мс(среднее значение расчитано пока что на глаз) А из Италии пинг до этерскана чуть больше, 138мс, а запросы летят в основном за 10-50мс, что довольно хорошо. Почему так происходит? Я думал что пинг является показателем скорости/задержек ведь пинг работает по TCP и запросы тоже по этому же протоколу, но на практике всё наоборот.

Andrew
07.09.2018
13:29:54
Ну, и приводит true к 1, а false к 0
var sum = 200 if(sum == true){ console.log('sf') }

♛ Козырной
07.09.2018
13:30:10
с помощью какой функции можо получить ip пользователя?

Andrew
07.09.2018
13:30:19
вот так, разве не должно приводиться к true?

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