Blog IT, Blog Marketing

Czy Bun zastąpi Node.js?

Czy Bun zastąpi Node.js?

Joanna Wasiak , 12.09.2022 r.

Jeszcze niedawno typowano Deno na następcę Node.js, a teraz okazuje się, że ma kolejnego potencjalnego następcę – Bun, bo o nim mowa, to najnowsze narzędzie JS, o którym twórcy mówią jako tym, które ma szansę zastąpić nie tylko nodejs, ale i Deno. Czy rzeczywiście Bun ma realny potencjał, by zastąpić oba frameworki w niedalekiej przyszłości? Sprawdziliśmy, a Ty dowiesz się, czytając dzisiejszy artykuł.

Kwestie poruszone w artykule to:

  • Główny atut – ekstremalnie szybka wydajność
  • Jak wygląda wydajność Bun w porównaniu z NodeJS i Deno?
  • Jaki był cel zaprojektowania Bun?

Główny atut – ekstremalnie szybka wydajność

Zanim przejdziemy do omawiania głównego atutu Bun, trzeba wspomnieć o tym, że nie ma w tym nic szczególnego, że nowsze narzędzia wypierają starsze. Szkopuł tkwi w tym, że jeśli mowa o narzędziach Java Script, każde (niemal) kolejne narzędzie jest zapowiadane jako rewolucyjne, które zastąpi poprzednie, w tym Node,js. Ile w tym myślenia życzeniowego, ile prawdy, dowiemy się w najbliższej przyszłości, niemniej Bun rzeczywiście rozwiązuje problem, z jakimi mierzy się obecnie wiele języków programowania – a jest nim ekstremalnie szybka wydajność.

Jak wygląda wydajność Bun w porównaniu z NodeJS i Deno?

Bun został napisany praktycznie od zera w niskopoziomowym języku programowania ZIG, o którym mówiono kiedyś, że zastąpi C. Twórcom udało się uzyskać niesamowite wyniki w testach wydajnościowych, właśnie dzięki ręcznej opcji kontroli pamięci, na jaką pozwolił ZIG. W przykładowym teście, jaki przeprowadzono na trzech frameworkach – Node.js, Deno i Bun v0.1.0, ten ostatni wyprzedził Nodejs aż trzykrotnie!

IT Business Analyst/Architect 18000 - 20000 PLN

Warszawa
Aplikuj

W innym teście – szybkości wczytania tablicy QSite, Bun również wyprzedził konkurencję – udało mu się obsłużyć 60,24 zapytań na sekundę, podczas gdy NodeJS miał w tym samym czasie wynik 23,28 zapytań, a Deno mniej niż 10. Ta niesamowita szybkość to niekwestionowany atut Bun, który może sprawić, że w najbliższej przyszłości zacznie być używany wszędzie tam, gdzie do tej pory występowały problemy z wydajnością.

Jak piszą autorzy – Bun zawdzięcza swoją niesamowitą szybkość niskiej kontroli nad pamięcią oraz brakowi ukrytego przepływu sterowania, co znacznie przyspiesza i ułatwia pisanie szybkiego oprogramowania. Bun zbudowano na silniku JavaScriptCore, który zwykle uruchamia się i działa nieco szybciej niż bardziej tradycyjne opcje, takie jak V8. Większość Bun jest napisana od podstaw, w tym: transpiler JSX/TypeScript, klient npm, bundler, klient SQLite, klient HTTP, klient WebSocket i inne.

Jaki był cel zaprojektowania Bun?

Jak można przeczytać na oficjalnej stronie: Cel Bun to uruchamianie większości światowego JavaScriptu poza przeglądarkami, co zapewni poprawę wydajności i złożoności przyszłej infrastruktury, a także zwiększy produktywność programistów, dzięki lepszym i łatwiejszym w obsłudze narzędziom. Jeśli rzeczywiście Bun sprawdzi się w obszarach, w których inne frameworki, takie jak Node.js mają problem z wydajnością, to Bun jest rzeczywiście realną odpowiedzią na nie, chociaż nie jest prawdopodobne, by całkowicie zastąpił Nodejs. Na pewno nie w najbliższej przyszłości.

Najnowsze oferty pracy:

Polecane wpisy na blogu IT:

Szukasz pracownika IT?

Dostarczymy Ci najlepszych specjalistów z branży IT. Wyślij zapytanie

Wyrażam zgodę TeamQuest Sp. z o.o. na przetwarzanie moich danych osobowych w celu marketingu produktów i usług własnych TeamQuest, w tym na kontaktowanie się ze mną w formie połączenia telefonicznego lub środkami elektronicznymi.
Administratorem podanych przez Ciebie danych osobowych jest TeamQuest Sp. z o.o., z siedzibą w Warszawie (00-814), ul. Miedziana 3a/21, zwana dalej „Administratorem".
Jeśli masz jakiekolwiek pytania odnośnie przetwarzania przez nas Twoich danych, skontaktuj się z naszym Inspektorem Ochrony Danych (IOD). Do Twojej dyspozycji jest pod adresem e-mail: office@teamquest.pl.
W jakim celu i na jakiej podstawie będziemy wykorzystywać Twoje dane? Dowiedz się więcej