Mercurial
comparison benchmark/bun-http-framework-benchmark/src/bun/h3.ts @ 183:a8976a008a9d
[BenchMark] Added bun bench mark to test seoboe vs other popular benchmarks.
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Fri, 23 Jan 2026 21:19:08 -0800 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 179:8d17f6e6e290 | 183:a8976a008a9d |
|---|---|
| 1 import { | |
| 2 toWebHandler, | |
| 3 createApp, | |
| 4 createRouter, | |
| 5 eventHandler, | |
| 6 toNodeListener, | |
| 7 getQuery, | |
| 8 setResponseHeader, | |
| 9 readBody | |
| 10 } from 'h3' | |
| 11 | |
| 12 const app = createApp() | |
| 13 const router = createRouter() | |
| 14 | |
| 15 router.get( | |
| 16 '/', | |
| 17 eventHandler((event) => { | |
| 18 setResponseHeader(event, 'content-type', 'text/plain') | |
| 19 | |
| 20 return 'Hi' | |
| 21 }) | |
| 22 ) | |
| 23 | |
| 24 router.get( | |
| 25 '/id/:id', | |
| 26 eventHandler((event) => { | |
| 27 const query = getQuery(event) | |
| 28 | |
| 29 setResponseHeader(event, 'content-type', 'text/plain') | |
| 30 setResponseHeader(event, 'x-powered-by', 'benchmark') | |
| 31 | |
| 32 return `${event.context.params?.id} ${query.name}` | |
| 33 }) | |
| 34 ) | |
| 35 | |
| 36 router.post( | |
| 37 '/json', | |
| 38 eventHandler((event) => readBody(event)) | |
| 39 ) | |
| 40 | |
| 41 app.use(router) | |
| 42 | |
| 43 Bun.serve({ | |
| 44 port: 3000, | |
| 45 fetch: toWebHandler(app) as any | |
| 46 }) |