erid: 2SDnjeU7TaZ

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

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

Программисты Amazon Web Services постепенно отказываются от других языков в пользу Rust, появившегося сравнительно недавно – в 2006 г. Они утверждают, что написанные на нем программы потребляют существенно меньше ресурсов на фоне их аналогов на С и С++, что позволяет снизить общемировое энергопотребление и уменьшить нагрузку на окружающую среду. Задолго до них возможности Rust в полной мере раскрыли хакеры, сообщает CNews.

Amazon «распробовала» Rust

Облачный сервис Amazon Web Services (AWS) разглядел огромные перспективы в языке программирования Rust, пишет ZDnet. Инженеры сервиса утверждают, что этот язык помогает им экономить время – его использование позволяет им избежать массы проблем, которые непременно возникли бы при написании кода на С или С++. В результате им не нужно бороться с ними, что и позволяет высвободить немало времени.

AWS – это крупнейший облачный сервис в мире. В IV квартале 2021 г. он занял 33% глобального рынка (21% у Microsoft Azure, 10% у Google Cloud, данные Statista.com). Rust, который так нравится его инженерам – это один из самых молодых языков программирования. Работа над ним ведется с 2006 г., а до версии 1.0 он обновился в мае 2015 г.

Rust получил признание не только в коллективе программистов Amazon. Как сообщал CNews, его полюбили еще и киберпреступники, начавшие переписывать многие вредоносные программы на этом языке. Участники популярного среди разработчиков форума Stack Overflow тоже назвали его своим любимым языком программирования.

Неразрывная связь AWS и Rust

Rust создал бывший сотрудник Mozilla Грэйдон Хор (Graydon Hoare). Постепенно вокруг языка выросло целое комьюнити, и Amazon Web Services стал одним из его первых участников. Более того, AWS постоянно расширяет штат своих Rust-программистов.

По утверждению представителей сервиса, Rust помогает разработчикам избежать множества недостатков, связанных с работой с памятью, характерных для C/C++. По словам инженера-программиста AWS Шейн Миллер (Shane Miller), Rust – это более «экологичный» язык программирования в сравнении не только с С, но даже с Python – cамым популярным языком программирования в мире.

Сервисы AWS, построенные на Rust, включают Firecracker, технологию, лежащую в основе бессерверной платформы Lamba для контейнерных приложений, Amazon Simple Storage Service (S3), Elastic Compute Cloud (EC2), сеть доставки контента CloudFront и Bottlerocket, контейнерную ОС на базе Linux.

Шейн Миллер утверждает, что использование ПО на Rust, лишенное известных проблем его аналогов на C, позволяет сократить объемы энергии, потребляемые центрами обработки данных. С его слов, переход на такое ПО даже по самым пессимистичным прогнозам поможет снизить потребление ЦОДами энергии на 50%.

В настоящее время дата-центры расходуют около 200 тераватт-часов электричества в день. Это примерно 1% общемирового объема потребления энергии.

Примеры энергоэффективности Rust

Шейн Миллер уточнила, что энергопотребление будет снижено за счет сокращения нагрузки на центральные процессоры и другие «железные» компоненты ЦОДов при использовании программ на Rust. В качестве примера она привела программное обеспечение компании Tenable из сферы кибербезопасности.

Раньше компания использовала софт, написанный на JavaScript, а теперь перешла на его аналоги на Rust. Последние работают вдвое быстрее, при этом потребляя на 75% меньше ресурсов процессора и на 95% эффективнее расходуя оперативную память.

Фирменное приложение сервиса для обмена сообщениями Discord тоже перешло на Rust. До этого его разработчики использовали языки Python, Go и Elixir. Со слов Миллер, отказ от одного только Go, который она назвала «замусоренным языком», сделало приложение в 10 раз более быстрым. Как и в случае с софтом Tenable, нагрузка на серверы тоже сократилась.

До общемирового просветления еще далеко

Несмотря на все преимущества Rust, выявленные программистами из AWS, Discord и других компаний, этот язык широким распространением похвастаться пока не может. Не исключено, что все дело в его «возрасте», особенно на фоне основных конкурентов. Так, Python был создан в 80-х годах XX века, а С и С++ существуют с 1972 г. и 1985 г. соответственно.

Первая версия языка Java увидела свет в 1995 г., почти 30 лет назад. Этот квартет занимает первые четыре строчки в авторитетном рейтинге языков программирования компании Tiobe (статистика за февраль 2022 г.). Rust, тем временем, располагается на 24 месте.

Тот факт, что разработка Rust не прекращается на протяжении 14 лет (на момент публикации материала он «дорос» до версии 1.58.1 от 20 января 2022 г.), не стимулирует мировое сообщество программистов к переходу на него. В рейтинге Tiobe он впервые появился в мае 2011 г., и за неполные 11 лет, прошедшие с того момента, ему удалось подняться максимум до 18 места в нем. «Рекорд» был установлен в сентябре 2020 г.

Популярные материалы