Skip to content

Performance Benchmark

Xellu edited this page Jun 14, 2026 · 2 revisions

Results

Nautica (v3.2.0)

  • Requests/sec: 3929.3
  • Total requests: 39293
  • Latency avg: 2.54 ms
  • Latency min: 0.94 ms
  • Latency p50: 2.46 ms
  • Latency p95: 2.88 ms
  • Latency p99: 3.56 ms
  • Latency max: 242.60 ms

FastAPI (v0.133.1)

  • Requests/sec: 3154.2 (-19.7%)
  • Total requests: 31542
  • Latency avg: 3.16 ms (+24.4%)
  • Latency min: 1.07 ms (+13.8%)
  • Latency p50: 3.10 ms (+26.0%)
  • Latency p95: 3.60 ms (+25.0%)
  • Latency p99: 4.07 ms (+14.3%)
  • Latency max: 15.52 ms (-94.0%)

Flask (v3.0.3)

  • Requests/sec: 76.1 (-98.1%)
  • Total requests: 761
  • Latency avg: 134.35 ms (+5189.4%)
  • Latency min: 1.26 ms (+34.0%)
  • Latency p50: 242.59 ms (+9772.0%)
  • Latency p95: 276.83 ms (+9508.7%)
  • Latency p99: 283.07 ms (+7851.7%)
  • Latency max: 288.62 ms (+19.0%)

Tested on

  • CPU: R5 5600X
  • RAM: 16 GB
  • OS: Win 11
  • Uvicorn: v0.49.0

Script used: https://pastebin.com/Q5qrXn8K

benchmark.py --url http://localhost:8100/hello --workers 10

Code snippets

Nautica

from napi.http import HTTP

@HTTP.GET()
def hello():
    return "hello world"

with http.logRequests in config.n3 disabled

FastAPI

from fastapi import FastAPI
import uvicorn

app = FastAPI()

@app.get("/hello")
async def hello():
    return "hello world"

uvicorn.run(app, host="0.0.0.0", port=8101)

Flask

from flask import Flask

app = Flask(__name__)

@app.get("/hello")
def hello():
    return "hello world"

app.run("0.0.0.0", 8101)

Clone this wiki locally