본문 바로가기
All Side/Runtime > BunJS

[Bun 시리즈] #4 Bun에 어울리는 프레임워크 고르기! - express vs fastify vs hono

by developerBeluga 2024. 1. 23.
728x90
반응형

 

 

 

 

 

그대 express를 왜 버리는가?

NodeJS + express + TypeScript 조합은 국룰 👍

express라는 프레임워크를 쓰는 이유는 국룰이라는 말이 나올 정도로 정~말 많은 이들이 쓰기 때문이다.

그만큼 안정성이 있다는거고 문제가 발생해도 많은 이들의 도움을 받을 수 있다.

express를 주제로 한 글도 많다.

 

하지만 런타임을 Bun으로 쓰기로 한거 프레임워크를 express로 하기엔 신식 + 구식 느낌이여서 싫다.

이번 기회에 프레임워크도 신식 느낌으로 프레임워크 두가지를 알아봤고 최종적으로 하나를 선택했다.

 

 

 

 

fastify와 hono 간단 소개

아마 fastify는 들어봤을거다.

이름처럼 빠른 처리 속도와 낮은 오버헤드를 자랑하며 고성능을 목표로 하는 프레임워크다. 

 

하지만 인제 hono에게 이름을 내줘야 할 것이다.

hono는 다른 프레임워크에 비하면 최근에 등장한 새로운 프레임워크다.

서버리스에 최적화 되어져 있으며 간결함과 가벼움을 가지고 있다. 

 

hono는 bun이나 deno 같은 특정 환경에서 매우 빠른 성능을 보여준다.

fastify와 비교하면 둘의 차이는 전통적인 서버 환경이냐 아니냐로 나뉠 수 있다.

예를 들어, nodeJS에서 빠른 성능을 바란다면 hono보다는 fastify가 낫다.

나의 경우 bun이기 때문에 fastify보단 hono가 더 끌렸다. 

 

 

 

 

hono와의 첫만남은 운명이었다...?

처음엔 express 대신 fastify을 사용할 생각이었다. 

근데 fastify가 생각 안나서 bun express vs 이런식으로 구글링 하다가...!

 

 

 

https://youtu.be/uxMADW3CmN4?si=CWfWcEdLb-jFDixZ

 

짜란~ 🥳

'I Stopped Using Exrpess.js' 라는 제목의 유튜브가 눈길이 갔다.

이때 처음으로 hono를 알게 되었는데 샘씨가 영상도 잘 만들어서 hono에 대해 간략한 소개와 코드를 보여줘서 좋았다.

오오 하면서 보다가 더욱 hono에 대해 알아보기로 했다.

(영상은 보기 좋아서 추천 👍)

 

 

 

https://hono.dev/top

본래 서비스의 기본은 공식문서이기 때문에 hono 공식문서에 갔다.

바로 귀여운 이름인 hono는 일본어로 불꽃을 의미한다는 TMI를 알게 됐다.

(아무래도 hono를 개발한 이가 일본분이여서 그런 것 같다.)

(혹시 해당 개발자 분의 github가 궁금하면 아래를 참고하시길.)

(https://github.com/yusukebe)

 

 

 

https://hono.dev/getting-started/bun#bun

hono가 deno와 bun을 위해 만들어졌다는 말이 사실인 것처럼 공식문서에 따로 정리되어져 있다.

그렇다고 nodejs가 없는건 아니지만 Hono is not designed for Node.js at first. But with a Node.js Adapter it can run on Node.js as well 라고 써져 있다.

 

bun과 hono의 궁합을 더욱 확인해보며 hono에 대해 찾아보다가 잘 적은 글을 공유한다.

 

 

 

 

https://medium.com/deno-the-complete-reference/deno-express-vs-fastify-vs-oak-vs-hono-whos-runs-fastest-0657d791c17a

 

 

글을 읽어보면 알겠지만 테스트 시나리오에 맞춰 성능 테스트에서 express가 가장 느린다는 것을 알 수 있다.

역시나 hono가 fastify보다 빠르다!

(나도 이렇게 성능 테스트를 하고 선택해야하는데 ㅋ...)

 

 

 

빠른 포퍼먼스를 자랑하는 bun에 어울리는 프레임워크가 아닐 수 없다.

찾아볼수록 hono가 마음에 들었다 🥳

 

본격적인 개발 전부터 bun과 hono의 조합으로 개발할 생각에 신났다.

아무래도 회사에서는 사용할 수 없는 신기술들을 지지고 볶고 마음대로 할 수 있어서 그런 것 같다.

(확증되지 않는 신기술을 도입하긴엔 회사는 중요하니깐...)

 

모두 사이드 프로젝트 하시길 🙏

 

 

 

 

 

+ elysia

찾아보다가 elysia도 hono처럼 빠른 프레임워크로 유명하다고 한다. 

하지만 다른 사람이 테스트한걸 보니 elysia가 hono보다 빠르지만 둘의 차이가 미미하다고 한다.

https://medium.com/deno-the-complete-reference/bun-elysia-js-vs-hono-hello-world-b655a20f1f2b

 

Bun: Elysia.js vs Hono — Hello world

Find out who’s faster among the fastest available Bun frameworks: Elysia.js or Hono?

medium.com

 

 

 

 

 

 

 

 

fin.

 

 

 

 

728x90
반응형

댓글