RepositoryJavaScriptITItaly
delvedor

delvedor/find-my-way

A crazy fast HTTP router

1.6ksao
157fork
11issue
0lượt xem

Thành tựu nổi bật

Những danh hiệu mới nhất của dự án

1
TINIX TRENDING·Chủ đề: radix-tree

#1 Repository Của Tuần

2
TINIX TRENDING·Chủ đề: speed

#2 Repository Của Tuần

9
TINIX TRENDING·Chủ đề: router

#9 Repository Của Tuần

⚡ find-my-way: Router HTTP siêu tốc với Radix Tree

Dựa trên cấu trúc dữ liệu Radix Tree (cây tiền tố nén), find-my-way mang lại tốc độ vượt trội cho việc định tuyến HTTP.

find-my-way là một thư viện router HTTP được viết bằng JavaScript, nội bộ sử dụng Radix Tree (còn gọi là Prefix Tree dạng nén) để đạt hiệu năng rất cao. Dự án hỗ trợ đầy đủ các tính năng như tham số đường dẫn (params), wildcard, và hoạt động độc lập — dễ dàng tích hợp vào bất kỳ framework nào. find-my-way cũng là lựa chọn của các dự án thực tế như Fastify và Restify.

✨ Điểm nổi bật

  • Tốc độ cực nhanh: Sử dụng Radix Tree tối ưu cho việc tra cứu và so khớp đường dẫn.
  • Hỗ trợ tham số đường dẫn: Dễ dàng trích xuất giá trị từ URL thông qua cú pháp params.
  • Hỗ trợ wildcard: Linh hoạt đối chiếu các đường dẫn không xác định trước.
  • Độc lập với framework: Không phụ thuộc bất kỳ framework nào, dễ tích hợp.
  • Tùy chỉnh hành vi lỗi: Hỗ trợ cấu hình defaultRoute, onBadUrl, và onMaxParamLength.
  • Xử lý đường dẫn thông minh: Tùy chọn bỏ qua dấu gạch chéo cuối (ignoreTrailingSlash) hoặc gạch chéo lặp lại (ignoreDuplicateSlashes).
  • Kiểm tra regex an toàn: Tự động phát hiện regex nguy hiểm (catastrophic backtracking) nếu không tắt bằng allowUnsafeRegex.
  • Phân biệt chữ hoa/thường: Tuân thủ RFC3986, có thể tùy chỉnh qua caseSensitive.

💡 Vì sao đáng chú ý

find-my-way không chỉ nhanhan vì cấu trúc dữ liệu hiệu quả, mà còn nổi bật nhờ thiết kế linh hoạt và đầy đủ tính năng. Không giống các router đơn thuần chỉ làm nhiệm vụ ánh xạ URL, find-my-way cung cấp cơ chế ràng buộc (constraints), hỗ trợ định tuyến theo phiên bản (versioned routes), và cung cấp các phương thức tiện ích như prettyPrint, reset, routes giúp phát triển và gỡ lỗi dễ dàng hơn.

Đây là lựa chọn lý tưởng cho các ứng dụng Node.js yêu cầu hiệu năng cao, đặc biệt khi xử lý số lượng lớn yêu cầu HTTP. Tham khảo thêm benchmark so sánh với các router khác tại đây.


#JavaScript #HTTPRouter #RadixTree #Fastify #OpenSource #TiniX

Dự án tương tự

Khám phá các dự án và mô hình AI khác có sự tương đồng.

RepositoryGo
go-chi/chi

lightweight, idiomatic and composable router for building Go HTTP services

23.0k
Oct 18, 2026
RepositoryGo
gorilla/mux

Package gorilla/mux is a powerful HTTP router and URL matcher for building Go web servers with 🦍

21.8k
Aug 15, 2024
RepositoryC++
uNetworking/uWebSockets

Simple, secure & standards compliant web server for the most demanding of applications

19.0k
Oct 26, 2026
RepositoryGo
julienschmidt/httprouter

A high performance HTTP request router that scales well

17.1k
Jul 22, 2024
RepositoryJavaScript
fastify/fastify

Fast and low overhead web framework, for Node.js

37.3k
Oct 21, 2026
RepositoryJavaScript
vuejs/vue-router

🚦 The official router for Vue 2

18.9k
Apr 14, 2026
RepositoryJavaScript
hapijs/hapi

The Simple, Secure Framework Developers Trust

14.8k
Oct 21, 2026
RepositoryJavaScript
MithrilJS/mithril.js

A JavaScript Framework for Building Brilliant Applications

14.5k
Aug 13, 2026
RepositoryJavaScript
http-party/http-server

A simple, zero-configuration, command-line http server

14.2k
Apr 15, 2026