knext — منصّة نشر تطبيقات Next.js على Knative بتقنية Scale-to-Zero
أداة نشر (Deployment Adapter) مبنية على واجهة المحوّل الرسمية لـ Next.js، تتيح تشغيل تطبيقاتك على Kubernetes بكفاءة تكلفة قصوى. تعتمد المنصّة على تقنية التوسّع إلى الصفر (Scale-to-Zero)؛ حيث تتوقف الحاويات (Pods) تمامًا عند الخمول وتُستأنف تلقائيًا عند أول طلب وارد، ما يعني أن تكلفة التشغيل أثناء الخمول تساوي صفرًا.
ولمعالجة بطء البدء البارد (Cold Start) المرتبط بهذا النهج، تستخدم المنصّة تخزينًا مؤقتًا للبايت-كود (Bytecode Cache) يحفظ نتائج التصريف ويتخطّى إعادة بناء JavaScript عند إيقاظ الحاويات، فيصبح البدء أسرع بمراحل.
أبرز المزايا:
محوّل رسمي لا نسخة معدّلة: مبني على واجهة Next.js Deployment Adapter الرسمية، دون أي تشغيل معكوس الهندسة.
استقلالية كاملة عن المزوّد (No Lock-in): يعمل عبر مشغّل واحد (Operator) مكتوب بلغة Go على أي بيئة سحابية — GKE وEKS وAKS وOKE أو خوادم فعلية.
بنية تصريحية (Declarative): تصف تطبيقك مرّة واحدة عبر مورد مخصّص (NextApp CRD)، ويتولّى المشغّل بناء الخدمة وربط آليات التوسّع وفرض أمان الصور المثبّتة بالـ Digest.
التقنيات المستخدمة: Next.js · Knative · Kubernetes · Go (Custom Operator) · CRD · KPA Autoscaler · S3/GCS/MinIO
مشروع مفتوح المصدر برخصة Apache-2.0.