CKN Server

เซิร์ฟเวอร์ธุรกิจที่ปลอดภัยตั้งแต่เริ่ม

CKN Server คือ framework สำหรับสร้าง API, WebSocket และหน้าเว็บฝั่งเซิร์ฟเวอร์ โดยสร้างบน Node.js โดยตรง ไม่พึ่ง Express หรือ library HTTP ของคนอื่น เหมาะกับองค์กรที่ต้องการระบบหลังบ้านที่เร็ว ปลอดภัย และเป็นของตัวเองทั้งชุด

1runtime dependency เท่านั้น (CKN Core)
73ไฟล์ทดสอบอัตโนมัติ ครอบคลุม security, WebSocket, cluster และ API
10,000WebSocket เปิดค้างพร้อมกันใน process เดียว ใช้เวลา 0.5 วินาที
88krequest ต่อวินาที (JSON ขนาดเล็ก) เมื่อเปิด 4 workers
ความสามารถ

สิ่งที่ CKN Server ทำได้

01

HTTP, HTTP/2 และ WebSocket ในตัว

ชั้น network ทั้งหมดเขียนบน Node.js standard library รองรับโปรโตคอลที่ระบบธุรกิจใช้จริงโดยไม่ต้องเพิ่ม library

  • HTTP/1.1, HTTPS และ HTTP/2 บน port เดียว
  • WebSocket ตามมาตรฐาน RFC 6455 พร้อม room และ broadcast
  • streaming แบบ NDJSON และ SSE
  • รับ upload ไฟล์ multipart พร้อมตรวจชนิดไฟล์
02

โครงสร้างแบบ Module, Controller, Feature

ทุก endpoint คือ Feature หนึ่งตัวที่รวม route, สิทธิ์, schema และเอกสารไว้ที่เดียว ทีมใหม่อ่านโค้ดแล้วเข้าใจเร็ว

  • โหลด module และ controller อัตโนมัติจากโฟลเดอร์
  • แต่ละ Feature มี code ที่ไม่ซ้ำกันทั้งโปรเจกต์
  • กำหนด scopes, tags และ idempotent ต่อ Feature
  • ดู manifest ของทุก Feature ได้ด้วยคำสั่งเดียว
03

ความปลอดภัยพร้อมใช้

เรียก useSecureDefaults บรรทัดเดียวก็ได้ชุดป้องกันมาตรฐาน และมี middleware สำหรับ authentication ที่ระบบองค์กรต้องใช้

  • security headers, CORS, HPP และ rate limit
  • JWT (HS/RS/PS/ES และ JWKS) และ API key
  • CSRF และ session ที่เก็บถาวรได้
  • Idempotency-Key กันการสั่งซ้ำจาก retry
04

ตรวจข้อมูลและสร้างเอกสาร API อัตโนมัติ

กำหนด JSON Schema ครั้งเดียว ระบบตรวจ input ก่อนเข้า logic และสร้างเอกสาร OpenAPI ให้เอง เอกสารจึงไม่ล้าสมัย

  • input ผิดรูปแบบตอบ 400 พร้อมรายละเอียดทันที
  • เอกสาร OpenAPI 3.1 ที่ /api-docs
  • error ทุกแบบใช้รูปแบบเดียว (RFC 9457)
05

พร้อมใช้งานจริงและดูแลง่าย

มีเครื่องมือที่ทีมดูแลระบบต้องใช้ ตั้งแต่ health check ไปจนถึงการใช้ CPU หลาย core

  • /healthz, /readyz และ /metrics
  • cluster หลาย worker พร้อม rolling restart
  • หยุดระบบอย่างนุ่มนวลเมื่อได้รับ SIGTERM
  • test server สำหรับเขียน test โดยไม่ต้องเปิดเครือข่ายจริง
06

หน้าจอ, AI agent และงานแก้ไขร่วมกัน

นอกจาก API แล้ว server ยังส่งหน้าเว็บ เปิดให้ AI agent เรียกใช้งาน และรองรับการแก้เอกสารร่วมกันแบบ real-time

  • หน้าเว็บฝั่งเซิร์ฟเวอร์ด้วย theme และ view engine ในตัว
  • รวมและส่ง UI พร้อม SPA fallback และ service worker
  • MCP server ให้ AI agent เรียก Feature ได้
  • ห้องแก้ไขร่วมกันแบบ real-time (collaboration)
ประสิทธิภาพ

ตัวเลขที่วัดจริง

ตัวเลขจาก benchmark ภายในบนเครื่อง Apple M1 Pro (Node.js 24) โดยโปรแกรมทดสอบรันบนเครื่องเดียวกับ server และไม่มี database ตัวเลขจึงวัดต้นทุนของ framework เอง ผลบนระบบจริงจะต่างตามฮาร์ดแวร์และงานของคุณ

GET ที่มี security + JWT + validation เทียบกับ Express 5
1.16x to 1.57x
ที่ 64 connections: 15,773 เทียบ 13,544 req/s บน macOS และ 17,889 เทียบ 11,391 req/s บน Linux (Docker) CPU ต่อ request ต่ำกว่าด้วย ฝั่ง Express ใช้ชุดเทียบเท่า (CORS, rate limit, JWT, ajv)
GET ธรรมดา เทียบกับ Express 5
32.8k req/s
ที่ 64 connections เร็วเท่า Express (32,756 เทียบ 31,206 req/s) แปลว่าระบบ Feature, validation hook และ telemetry ไม่เพิ่มต้นทุนที่วัดได้
WebSocket echo
62.9k msg/s
p50 1.00 ms ใช้ CPU 16 µs ต่อข้อความ เทียบกับ library ws เดิม 59.4k msg/s (เพิ่มขึ้น 6%)
WebSocket ที่เปิดค้าง 10,000 connection
200 MB
RSS ทั้ง process ต่อ connection ประมาณ 10.4 KB เทียบกับ 19.7 KB ของ library ws เดิม CPU ตอนว่าง 2%
เปิด cluster 4 workers (JSON ขนาดเล็ก)
88.0k req/s
เทียบกับ process เดียวที่ 35.8k req/s ส่วน JSON 100 แถวเพิ่มจาก 15.1k เป็น 50.9k req/s
HTTP/2 เทียบกับ HTTP/1.1 (JSON ขนาดเล็ก)
46.1k req/s
เทียบกับ 36.7k req/s บน HTTP/1.1 และ 34.8k req/s บน HTTPS (HTTP/2 แบบ 8 stream ต่อ connection)

ตัวเลขจากชุดทดสอบและ benchmark ภายในของ CKN ผลจริงขึ้นกับเครื่องและปริมาณข้อมูลของแต่ละระบบ

คุณค่าต่อธุรกิจ

ธุรกิจของคุณได้อะไร

เป็นเจ้าของ stack ทั้งชุด

ชั้น HTTP, router, WebSocket และ security เขียนเองบน Node.js และพึ่ง library ภายนอกที่ใช้ตอน run เพียงตัวเดียวคือ CKN Core ผลคือพื้นที่เสี่ยงจาก supply chain เล็กลง และเมื่อมีช่องโหว่หรือต้องปรับพฤติกรรม ทีมเราแก้ได้เองโดยไม่ต้องรอ maintainer ภายนอก

ลดความเสี่ยงด้านความปลอดภัย

ชุดป้องกันมาตรฐาน, authentication, CSRF และ idempotency มาพร้อมกับ framework และมี test โจมตีจริงเช่น path traversal และ header ผิดรูป ทุก service จึงเริ่มจากระดับความปลอดภัยเดียวกัน ไม่ต้องให้แต่ละทีมประกอบเอง

ส่งมอบเร็วและดูแลต้นทุนได้

validation, เอกสาร OpenAPI, health check และ cluster เป็นการตั้งค่า ไม่ใช่งานเขียนใหม่ ทีมจึงใช้เวลากับ business logic มากขึ้น และเมื่อโหลดเพิ่มก็ใช้ CPU ที่มีอยู่ได้เต็มขึ้นก่อนต้องซื้อเครื่องเพิ่ม

สำหรับนักพัฒนา

Feature หนึ่งตัว รวม route, สิทธิ์ และ validation

ใช้งานอยู่ในส่วนต่าง ๆ ของ CKN stack

  • business services ทุกตัวของ CKN (inventory, transportation และอื่น ๆ) ใช้เป็นตัวรัน API
  • platform services เช่น identity, integration และ portal
  • บริการปฏิบัติการอย่าง console และ engine ที่ส่งทั้ง API และหน้าจอ
  • แอปที่สร้างด้วยคำสั่ง ckn init ใช้ framework นี้เป็นฐาน
class OrderController extends Controller {
    constructor() { super(); this.url = "orders"; }

    create = {
        code: "SALES.ORDER.CREATE", name: "Create order", method: Controller.Method.POST, url: "",
        inputSchema: {
            type: "object", additionalProperties: false, required: ["sku", "qty"],
            properties: { sku: { type: "string", minLength: 1 }, qty: { type: "integer", minimum: 1 } }
        },
        scopes: ["orders:write"], sideEffects: "write", idempotent: true,
        process: async (session: Session) => { session.send({ success: true, data: session.input }); }
    };
}
CKN Technology

ดู package อื่นในชุดเดียวกัน

อยากเห็น CKN Server ทำงานกับระบบของคุณ

ติดต่อเรา →