# µExpress(Ultimate Express) - Express와 호환되지만 더 빠르게

> Clean Markdown view of GeekNews topic #17072. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=17072](https://news.hada.io/topic?id=17072)
- GeekNews Markdown: [https://news.hada.io/topic/17072.md](https://news.hada.io/topic/17072.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2024-10-04T10:28:02+09:00
- Updated: 2024-10-04T10:28:02+09:00
- Original source: [github.com/dimdenGD](https://github.com/dimdenGD/ultimate-express)
- Points: 9
- Comments: 1

## Summary

µExpress는 µWebSockets 기반으로 Express와 완벽하게 호환되면서도 더 빠른 성능을 제공하는 HTTP 서버입니다. 기존 Express.js를 대체할 수 있으며, 모든 Express 테스트를 통과하여 호환성을 보장합니다. 다른 uWebSocket 기반 프로젝트들과 비교했을 때, µExpress는 최적화된 성능과 호환성을 동시에 제공하여 Express 사용자에게 매력적인 선택이 될 수 있습니다.

## Topic Body

- µWebSockets 기반의 완전한 Express 호환성을 갖춘, 가장 빠른 http 서버  
  - Express.js 4의 Fork가 아닌, 더 빠르게 동작하는 재구현체로 기존 Express.js 를 그대로 대체 가능  
  - 호환성 테스트를 위해 기존 Express의 모든 테스트를 실행하고, 그 다음에 µExpress로 실행하고 결과를 비교하여 일치하는지 확인  
- 다른 uWebSocket 기반의 비슷한 프로젝트들과의 비교   
  - Bun의 `express` : Bun은 HTTP 모듈에 uWS를 사용하기 때문에 Express는 Node.js보다 약 2~3배 빠르지만, uWS 전용 최적화를 수행하지 않기 때문에 µExpress보다는 여전히 느림   
  - `hyper-express` : Express와 유사한 API를 가지고 있지만, 드롭인 대체와는 거리가 멀고 대부분의 기능을 다르게 구현. 전환이 어렵고, 기존 Express용 미들웨어는 대부분 지원 안됨   
  - `uwebsockets-express` :  드롭인 대체에 가깝지만 많은 API를 누락하며, 내부적으로 메서드를 호출하여 Express에 의존하며, 기본 uWS 라우터를 사용하여 라우팅을 최적화하려고 하지 않음

## Comments



### Comment 29735

- Author: tsboard
- Created: 2024-10-05T22:09:40+09:00
- Points: 1

만약 Bun을 런타임으로 사용하신다면, ElysiaJS를 고려해보세요. Express와의 완벽한 호환이 꼭 필요하지 않으신 분들에겐 훌륭한 선택이 될거라 생각합니다.
