170 похожих чатов

Я не понимаю, чего вы доказать пытаетесь сейчас. что вместо подходящего

инструмента лучше прихерачить к ноде что-то сбоку?

55 ответов

140 просмотров

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

вот взять библиотеку curl - что нода вместо нее может предложить

сделай просто бенчмарки rps, это не сложно, с go fasthttp и rust actix-web

Alexey-Ermakov Автор вопроса
Agent-G
вот взять библиотеку curl - что нода вместо нее мо...

что? зачем ноде что-то предлагать вместо курла? к чему вопрос этот?

Alexey-Ermakov Автор вопроса
Andy Cox
сделай просто бенчмарки rps, это не сложно, с go f...

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

Alexey-Ermakov Автор вопроса
Andy Cox
запиши видос

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

Alexey Ermakov
кинь репу с uws проектом, мне лень изучать, как та...

https://github.com/uNetworking/uWebSockets.js/tree/master/examples https://github.com/uNetworking/uWebSockets.js/blob/master/examples/HelloWorld.js#L1

Andy Cox
сделай просто бенчмарки rps, это не сложно, с go f...

Совсем для ленивых: у ребят уже и тексты бенчмарков в репе https://github.com/the-benchmarker/web-frameworks

Alexey-Ermakov Автор вопроса
Andy Cox
https://github.com/uNetworking/uWebSockets.js/tree...

uws: Requests/sec: 85496.82 rust (без тюнинга): Requests/sec: 98705.86

Alexey Ermakov
uws: Requests/sec: 85496.82 rust (без тюнинга): R...

что за проц? что за скрипт? чет медленно для раста

Alexey-Ermakov Автор вопроса
Alexey Ermakov
mac m2

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

Alexey-Ermakov Автор вопроса
A Z
а что за скрипт? у меня даже го отдавая небольшой ...

minihttp, простой "hello world" у меня сейчас рабочего миллион всего запущено (один только докер половину ресурсов съедает) смысл было относительную разницу показать

Alexey-Ermakov Автор вопроса
A Z
а что за скрипт? у меня даже го отдавая небольшой ...

го у тебя всё железо правильно использует сам собой, а я просто в одно ядро запустил ноду и ржавого

Alexey Ermakov
го у тебя всё железо правильно использует сам собо...

может быть, но у меня и uws больше выдавал, и даже фастифай

Alexey-Ermakov Автор вопроса
A Z
может быть, но у меня и uws больше выдавал, и даже...

я относительную разницу показал конкретно у себя

Alexey Ermakov
uws: Requests/sec: 85496.82 rust (без тюнинга): R...

как можно вообще на м2 с uws получить с -d 10 -c 100 меньше 100к rps, я даже не знаю

Alexey Ermakov
uws: Requests/sec: 85496.82 rust (без тюнинга): R...

да и вообще, уж юзай autocannon вместо wrk

Alexey-Ermakov Автор вопроса
Alexey Ermakov
давай команду.

autocannon -d 10 -c 100 -t 4 --latency http://127.0.0.1:9001

Alexey-Ermakov Автор вопроса
Andy Cox
autocannon -d 10 -c 100 -t 4 --latency http://127....

в половину меньше рпс с этим кэнноном

Andy Cox
autocannon -d 10 -c 100 -t 4 --latency http://127....

На моей uws 47968rps@1.52ms uws 47539rps@1.54ms

Artem Soroka
На моей uws 47968rps@1.52ms uws 47539rps@1.54ms

Не совсем понял, в чем проблема, в ноуте или autocannon, но особой разницы между 1 и 4 потоками для uws и actix нет - на уровне 50k для параметров -c 100/500/1000 Для пробы погонял express, в нём прирост от кластера есть С 8k до 22k

Использую wrk -c 100 - d 10 -t 4 Оба проекта используют 4 потока actix 45k@539us uws 45k@541us

Илюшп
а что по коду?

Я брал примеры отсюда https://t.me/nodejs_ru/1140898 Хеловорлды и роутер

Alexey Ermakov
minihttp, простой "hello world" у меня сейчас рабо...

вообщем, да, потестил minihttp, результаты у него гораздо лучше, чем у actix, только нужно понимать, что по возможностям minihttp даже рядом не стоит с uws. использовать minihttp на проде это сейчас изобретать велосипед, впрочем, он создан для результата на techempower, но вроде его даже делистнули, тк по функционалу не проходит

Alexey-Ermakov Автор вопроса
Andy Cox
вообщем, да, потестил minihttp, результаты у него ...

каким возможностям? какие возможности, которые мне вот прям нужны есть у uws, которых нет <в любом другом http> ?

Alexey Ermakov
каким возможностям? какие возможности, которые мне...

ну как бы основное направление uws вебсокеты

Alexey-Ermakov Автор вопроса
Andy Cox
вообщем, да, потестил minihttp, результаты у него ...

mini создан поверх may - stackless coroutines в расте, а не для бенчамарков специально. FaF - для бенчмарков mini ни откуда не делистили, насколько я знаю.

Alexey-Ermakov Автор вопроса
Andy Cox
ну как бы основное направление uws вебсокеты

Я могу и для вебсокетов накидать, которое быстрее будет раза в 3, чем uws. Хватит пытаться всеми силами пытаться спасти своё болото. Нода - не для хайлоад/лоу лэтэнси и не нужно пытаться из неё это делать.

Alexey Ermakov
Я могу и для вебсокетов накидать, которое быстрее ...

Вчера пробовал разные флаги сборки, но там в пределах 5% эффект У меня примерно одинаковые результаты для uws и actix Поэтому не понимаю, откуда у вас там x3

Alexey-Ermakov Автор вопроса
Artem Soroka
Вчера пробовал разные флаги сборки, но там в преде...

Наверное и не нужно понимать. Вам ноды хватит.

Alexey Ermakov
Наверное и не нужно понимать. Вам ноды хватит.

может потому что это неюзабельная хрень? may/minihttp

Alexey-Ermakov Автор вопроса
Andy Cox
может потому что это неюзабельная хрень? may/minih...

я то же самое про uws могу сказать. ни один нормальный техлид не будет этим пользоваться, а возьмет Go тот же.

Alexey-Ermakov Автор вопроса
Алексей Попов
Это несерьёзно

А что мне в ответ на доводы вида "неюзабельная хрень" и "нужно понимать, что в uws много говна, потому оно медленнее, по этому ты не прав" отвечать?

Alexey Ermakov
Я могу и для вебсокетов накидать, которое быстрее ...

я уже для себя понял, что выше головы не прыгну, тк все равно упираюсь в скорость NATS. проекты с uws прекрасно чувствуют себя на хайлоаде, потести как-нибудь все это не на 100 подключений

Alexey Ermakov
А что мне в ответ на доводы вида "неюзабельная хре...

Вы сделали свой бенч, я свой https://t.me/nodejs_ru/1140951 Результаты отличаются, хочу понять почему

бизнесу сейчас не интересно, когда ты там доковыряешь все на minihttp, не уйдя в development hell, и чтобы этим можно было пользоваться, куда интереснее закинуть в прод максимально быстро и с минимумом затрат. так что тейки в сторону uws плиз не надо, если не знаешь, как скейлить ноду

Alexey-Ermakov Автор вопроса
Andy Cox
бизнесу сейчас не интересно, когда ты там доковыря...

Я тебе скажу, бизнесу не интересно в целом этой хернёй заниматься. Бизнес берёт java+netty или go, когда нагрузки есть. Или С++, когда они очень большие.

Andy Cox
бизнесу сейчас не интересно, когда ты там доковыря...

К чему вчера спор про uws пришел ? Сделали бенчмарк ?

Amwey
К чему вчера спор про uws пришел ? Сделали бенчмар...

да, сделал на моем древнем компе было 158к rps на uws и 158-160к rps minihttp до этого тестил uws с actix и раст проигрывал, более того, при пайплайнинге подключений и их росту, actix отваливался намного раньше uws

Amwey
К чему вчера спор про uws пришел ? Сделали бенчмар...

Данные разнятся, делайте свои бенчмарки и выводы

Andy Cox
да, сделал на моем древнем компе было 158к rps на ...

не делал еще тестов ни wildcard ни параметров, просто hello world

Alexey Ermakov
https://t.me/nodejs_ru/1140944

Кстати, а как вы uws в докер запаковали?

Alexey-Ermakov Автор вопроса
Alexey Ermakov
А что мне в ответ на доводы вида "неюзабельная хре...

Ты не на такой комментарий ответил, и не тому человеку

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта