Загрузка...

Why Rust is the best web language?

Thread in Backend created by RichAsHell Jul 4, 2025. 178 views

  1. RichAsHell
    RichAsHell Topic starter Jul 4, 2025 Banned 9 Jan 31, 2025
    Сегодня мы обсудим почему Rust лучший язык для WEB на примере фреймворков Actix и Laravel.

    Главная цель бекенда - производительность и безопасность.
    Actix — один из самых производительных веб-фреймворков благодаря Rust.
    Laravel, использующий PHP, заметно уступает Actix в быстродействии и производительности под высокой нагрузкой.

    Actix — один из самых быстрых веб-фреймворков в мире:
    Примерные показатели:
    На простых запросах JSON (бенчмарки TechEmpower (https://www.techempower.com/benchmarks/#section=data-r23)):
    • Actix: до ~2,720,330 RPS.
    • Node.js (Express): ~350,000 RPS.
    • Laravel (PHP): ~26,000 RPS.
    Таким образом, Actix превосходит Laravel по RPS примерно в 105 раз.


    Почему Actix (Rust) настолько производителен?

    Главная причина — язык Rust и подходы, которые он использует:
    • Компилируемый в машинный код (LLVM).
    • Zero-cost абстракции: абстракции (типы, структуры данных, асинхронность) не создают дополнительной нагрузки в runtime.
    • Асинхронность: Actix активно использует асинхронные runtime-ы, такие как tokio, что позволяет эффективно обрабатывать огромное количество одновременных соединений.
    • Эффективное управление памятью: Rust не имеет сборщика мусора, поэтому отсутствуют паузы GC, а память используется крайне рационально.


    Чем Rust лучше C++?
    Сравниваю их, тк С достойный низкоуровневый соперник и до недавнего времени был одним из двух самых сильных решений в web вместе с Java.

    Rust считается «следующим шагом» после C++ благодаря нескольким ключевым преимуществам:
    a. Гарантия Memory Safety без оверхеда
    Rust практически полностью исключает ошибки работы с памятью (buffer overflow, use-after-free, data race).
    В C++ такие ошибки могут происходить регулярно, если программист не очень аккуратен.
    b. Современная, удобная асинхронность
    Rust с Tokio или async-std предоставляет простое и удобное API для асинхронного программирования без дополнительных библиотек.
    В C++ асинхронность гораздо сложнее и требует глубоких знаний о многопоточности и работе с памятью.
    c. Мощная система типов и строгий компилятор
    Rust выявляет большинство ошибок на этапе компиляции.
    C++ менее строг и позволяет больше ошибок в runtime.
    d. Простота параллельного программирования
    Rust изначально проектировался с упором на удобство многопоточности.
    Безопасное параллельное программирование доступно практически любому разработчику в Rust, в отличие от C++, где оно требует особых навыков.
    e. Более лёгкое управление зависимостями
    Cargo и crates.io в Rust — простейшая система управления пакетами.
    В C++ dependency management традиционно проблематичен и менее удобен.

    Итогo:
    1) Очень быстрый:
    Rust работает быстрее почти всех других языков, включая PHP и Python. Программы на Rust «летают»!

    2) Не тратит память зря:
    Он аккуратно распоряжается памятью компьютера. Это значит, что компьютер не будет тормозить, а игры и сайты будут работать плавно.

    3) Безопасный:
    На Rust сложно случайно создать ошибку, которая сделает программу уязвимой. Это как автоматическая защита, чтобы ничего не сломалось.


    Что это значит на практике?

    Быстрые сайты и API
    Веб-сервисы будут отвечать мгновенно даже при тысячах одновременных посетителей.
    Пользователи не заметят задержек и тормозов.

    Экономия денег на серверах
    Благодаря высокой производительности и низкому расходу памяти, для сайта потребуется меньше серверов.
    Хоть разработчики на раст не самое дешёвое удовольствие
    https://web3.career/web3-salaries
    , но поверьте, это всё окупится сполне при виде чека с AWS либо количества серверов для одной нагрузки. Разница в 105 раз это не просто различие скорости, а сколько вам понадобится серверов, чтобы выдержать ту же нагрузку, что и Actix.

    Стабильная работа под нагрузкой
    Даже если неожиданно придёт много людей, сервис на Rust не упадёт и будет работать стабильно.

    Безопасные платежи и данные
    Веб-приложения на Rust гораздо сложнее взломать или заставить утечь данные, потому что он защищает от ошибок программиста автоматически.
    Это значит что шанс иметь потери от взломов близок к нулю, только если в коде допущены логические ошибки. В случае с Ларавель вы будете больше чинить всё
    чем создавать новые функции для клиентов. Как по мне лучше тратить 8000$ на кодера на Раст, чем терять всю кассу проекта раз в месяц вместе с постоянными
    лагами, падением проекта и тд.

    Лёгкое масштабирование
    Если проект станет успешным и число пользователей вырастет, расширить приложение и увеличить его мощность будет гораздо проще и дешевле.
    Раст уже поддерживает все самые важные библиотеки для крупных проетков. Redis, NATS, Cassandra, ClickHouse, RabbitMQ.

    Лучшее качество приложений
    Сайты на Rust открываются быстрее, страницы загружаются моментально, что улучшает SEO и пользовательский опыт.



    Ожидаю ваши вопросы.
    Перекиньте тему, если она не там где надо.
     
  2. DonaldDuck
    DonaldDuck Jul 4, 2025 9960 Oct 18, 2021
    у меня 6к часов в Расте, с калаша норм жму, но спасибо за информацию
     
  3. FAT32
    FAT32 Jul 4, 2025 :sueta: 1296 May 17, 2018
    Но рынок по вакансиям ебет GO
     
    1. View previous comments (4)
    2. TheBoossya
      RichAsHell, типичный представитель раст комьюнити) все крупные проекты - это какие? Весь ру бигтехе переписали на го и начинают новые проекты на нем - вк, авито, озон, вб, Яндекс, местами сбер. Поо мировой вообще молчу - гугл, тик-ток, Майкрософт давно используют го. Компилятор тайпскрипта переписали на го)))
      Глупо спорить с тем, что раст невзлетевший нишевый язык, который используется для того, чтобы заменить плюсы.

      Докером не пользуешься?) OpenTelemetry не пользуешься?) Кубером не пользуешься?) про кучу баз данных и веб-сервисы вообще молчу.

      Расскажешь про это вот этот почти весь софт, которым ты пользуешься, на расте?)
    3. RichAsHell Topic starter
      TheBoossya, докер -, кубер да, но он мог бы и на пайтоне работать, опен телеметри -
      А я то думаю чё так компилятор лагает :)
      качество ру сервисов тоже желает лучшего.
      Ну твоё мнение.
    4. RichAsHell Topic starter
      FAT32, Действительно, много проектов написано уже на крестах, но новые всё чаще выбирают раст, язык тоже популярный в финтеч
    5. View the next comments (3)
Loading...
Top