Pull to refresh

Comments 22

Спасибо за наводку на oha, попробую использовать вместо ab

А почему взяли Actix а не Axum? Второй же сейчас самый популярный в Rust.

Actix выходит чуть быстрее по бенчмаркам, чем Axum, наверное поэтому его и брал автор оригинала

Почему .NET 8.0 RC2, а не Release?

Потому что оригинал статьи вышел в октябре 23, а дотнет релизнулся в ноябре

Не заметил, что перевод.)

Было бы интересно посмотреть результаты на средних и крупных запросах.

Еще HTTPS бы не мешало потестить. Хотя это уже потребует менять методику.

Мне кажется в реальной жизни разница будет сильно меньше, возможно даже неразличимо меньше.

https может терминировать тот же nginx или haproxy.

Да, так рекомендовано делать внутри периметра для оптимизации трафика между серверами. Цифры для этого случая в статье и есть.

Выгялдит как сравнение ряди сравнения.

В реальности я скорее всего возьму простой фреймворк на Питоне. Узким местом скоее будет сеть или возможности сервиса.

Понятно, что для обычного бизнес-прложения это не важно, но вот для биржи, рекламного сервиса и всего, где важна скорость и обработка большого числа запросов это важно, rust в этом случае выглядит лучше всего ещё и из-за того, что работает без сборщика мусора, что может порой задержки, не даром в net8 потратили большие усилия на работу с паматью, хотя в go она изначально была хороша. Но вот писать на rust или go после с# совсем не приятно, для меня самым интересным выглядел D, но на нём нет толковых веб фреймворков, да и работу с памятью по типу как в rust вроде так и не завезли, но как язык очень приятно

Когда в теме не про питон увидел, что никто в комментах не написал про питон

Необходимо сравнить заголовки ответа. Возможно наполнение заголовков в каком то из движков выше. Аналитика приходит, кешинг. В таком тексте каждый лишний байт приведёт к значительной просадке

Если такие мелочи важны, то стоит еще посмотреть на что-то типа grpc.

Давным-давно, я профилировал одного индуса и отписывался тут в комментах. Тот тоже сравнивал два разных языка и что-то там решал.

Так вот о тестах: Там зачастую играет роль наличие keep-alive соединения. Они ускоряют тесты очень сильно. Поэтому я не удивлён, что результаты такие разные.

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

Там далеко не конфигурация по умолчанию.

Это не просто сравнение ради сравнения, это просто бред какой-то.Типа возьмем рандомные фреймворки, запустим на машинках в каком-то облаке и посмотрим, что из этого выйдет. Сказать, что тут много нюансов - ничего не сказать:
– throughput / latency сильно зависят от конкурентности запросов,
– приложения на jit яп сильно зависят от прогрева, выделенных ресурсов, настроек сборки мусора,
– все приложения зависят от архитектуры, те же java/c# jit компиляторы не так чтобы оптимизированы под arm-ы, их десятками лет полировали под x86,
– все зависят от настроек системы, настроек сети, и в целом от расположения машин в сети датацентра.

Как уже упоминали ранее, в более профессиональных бенчмарках результаты подобных plaintext тестов лежат рядом в пределах погрешности +-5% https://www.techempower.com/benchmarks/#hw=ph&test=plaintext&section=data-r22

Выглядит как соревнование грузовиков со снятыми кузовами - какой быстрее довезет отсутствующий груз.

Теперь мы знаем, что hello world лучше писать на rust

Может стоило в Bun&Elysia использовать кластера?

Узким местом чаще всего является IO и БД. Интересней было бы глянуть сравнения чего-то в этой области. Решений, архитектур, стеков и каких-то технологий.

Sign up to leave a comment.