Меню Закрити

Менеджер пакетів npm переписали на Rust

npm — найбільший реєстр програмного забезпечення в світі, який оброблює більше 1,3 млрд. завантажень на день.

Система авторизації npm, побудована на JavaScript, стала вузьким місцем менеджера пакетів і ії необхідно було у будь-якому випадку переробляти. Команда npm вирішила при цьому вивчити можливість переписати систему авторизації на іншій мові.

Мови програмування C та C++ розробники відкинули одразу, адже на їхню думку цей стек не підходить для сучасного вебу.

Java не підійла тому, що потребувала розгортання своєї екосистеми на продакш-серверах (JVM, бібліотеки залежностей тощо).

Щільну увагу розробники приділили Rust та Go. Для вибору переможця програмісти переписали систему авторизації на обох мовах програмування. На Rust ця робота тривала близько години, а на Go – декілька днів. Більш того, рішення, реаліоване на Go потребувало встановлення цілої купи залежностей:

Перспектива встановлення глобальних залежностей … була неприйнятною

Rust — це рішення, яке масштабується і є простим для розгортання. Він характеризується низькою ресурсоємністю і високою безпекою пам’яті. Управління залежностями через Cargo є зручним і сучасним.

З цих причин npm обрав Rust.

Якщо ви знайшли помилку, будь ласка, виділіть фрагмент тексту та натисніть Ctrl+Enter.

0

Повідомити про помилку

Текст, який буде надіслано нашим редакторам: