نسخه ۰.۰.۱-beta

معماری فنی موتور تیغ

موتور مستقل مبتنی بر حافظه برای پردازش و بازیابی سریع داده‌های متنی فارسی با ساختار داده ترای، حافظه پنهان LRU و کنترل جریان داده.

ساختار موتور

نمودار کامل معماری و جریان داده

ساختار موتور تیغ
۶ ماژول
هسته
۱ فعال
اداپتور
۲ فعال
Middleware
۰
وابستگی

ماژول‌ها

هر ماژول مستقل و قابل توسعه

TighRouter
مسیریاب

پیاده‌سازی Trie برای مسیریابی. در بهترین حالت O(1) و بدون جستجوی خطی.

O(1) lookupپارامتر داینامیکWildcard
TighCache
کش

کش LRU با انقضای زمانی. ردیابی مصرف حافظه و پاکسازی خودکار.

LRUTTLInvalidation
TighRateLimiter
محدودساز

سه الگوریتم محدودسازی نرخ. ردیابی per-IP و حذف خودکار رکوردهای منقضی.

Token BucketSliding WindowFixed Window
TighCircuitBreaker
مدار شکن

StateMachine سه‌حالته با بهبود خودکار. جلوگیری از cascading failure.

Closed/Open/HalfAuto recoveryEvents
TighMetrics
متریک

Percentile latency، شمارنده درخواست‌ها، نسبت کش، و snapshot لحظه‌ای.

P50-P99CountersSnapshot
TighMiddleware
پایپلاین

اجرای زنجیره‌ای middleware. CORS، اندازه‌گیری زمان، و فشرده‌سازی.

CORSTimingGzip

چرخه درخواست

مسیر یک درخواست از ورود تا پاسخ

۱
درخواست ورودی
کلاینت درخواست HTTP ارسال می‌کند
۲
بررسی نرخ
محدودساز بر اساس IP بررسی می‌شود
۳
CORS + زمان
هدرها تزریق و زمان پاسخ ثبت می‌شود
۴
جستجوی کش
در صورت Hit پاسخ فوری برمی‌گردد
۵
مسیریاب Trie
مسیر مورد نظر O(1) پیدا می‌شود
۶
مدار شکن
وضعیت Circuit بررسی می‌شود
۷
اجرا
Handler اجرا و نتیجه برگردانده می‌شود
۸
ذخیره کش
نتیجه برای درخواست‌های بعدی ذخیره می‌شود
چرخه حیات درخواست

متریک زنده

داده لحظه‌ای از موتور — بروزرسانی خودکار

در حال بارگذاری...

بنچمارک

اندازه‌گیری واقعی عملکرد ماژول‌ها

در حال اجرای بنچمارک...

ساختار فایل‌ها

ماژول‌های TypeScript · بدون وابستگی خارجی در موتور · مجوز MIT

فایل‌ها
lib/engine/
index.tsنقطه صادرات
types.ts۲۵+ نوع TypeScript
engine.tsهسته اصلی — class Tigh
router.tsمسیریاب Trie
cache.tsکش LRU + TTL
middleware.tsپایپلاین + CORS + Timing
rate-limiter.tsمحدودساز نرخ
circuit-breaker.tsمدار شکن
metrics.tsمتریک و percentile
adapter-next.tsاداپتور Next.js
instance.tsSingleton موتور
app/api/engine/
stats/route.tsمتریک زنده
benchmark/route.tsبنچمارک عملکرد
ساختار پکیج
نحوه استفاده
import { Tigh } from "@/lib/engine"

const engine = new Tigh({
  enableCache: true,
  enableRateLimit: true,
  cache: { maxSize: 5000, defaultTTL: 30000 },
  rateLimit: { maxRequests: 120, strategy: "token-bucket" },
})

engine.get("/api/quotes", async (req) => {
  const quotes = await fetchQuotes(req.query)
  return { status: 200, headers: {}, body: quotes }
})
اطلاعات پروژه
فایل‌ها۱۳
انواع TS۲۵+
وابستگی۰
LicenseMIT
اداپتورNext.js
نسخه۰.۰.۱-beta

نقشه راه

مسیر توسعه موتور تیغ

v۰.۰.۱-beta
انجام شد
مسیریاب Trieکش LRUمحدودساز نرخمدار شکنمتریکاداپتور Next.js
v۰.۱.۰
آینده
اداپتور Expressاداپتور Bunاداپتور Denoفشرده‌سازی بهتر
v۰.۲.۰
آینده
Worker Threads برای CPU-boundپشتیبانی WebSocketMiddleware marketplace
v۱.۰.۰
آینده
پکیج npm مستقلمستندات کاملTest suiteCLI tool

تیغ

موتور API متن‌باز فارسی. طراحی و پیاده‌سازی توسط آرسام آدینه. مجوز MIT.