เทคโนโลยี

ภาพรวมระบบ almond

เอกสารนี้ตอบคำถามที่พบบ่อยเรื่องเทคโนโลยี ฐานข้อมูล ความปลอดภัย backup และการใช้งาน — จัดเป็น 2 ระดับให้ผู้บริหารและฝ่าย IT อ่านเข้าใจได้พร้อมกัน

ระดับ 1 — Executive Summary

สรุปสำหรับผู้บริหาร

ตอบคำถามหลัก 10 ข้อของลูกค้าในหน้าเดียว — พร้อมส่งต่อผู้บริหารได้ทันที

พัฒนาด้วยภาษาอะไรTypeScript / React 19 (Frontend) + TypeScript บน Edge runtime (Backend)
เครื่องมือหลักTanStack Start, Tailwind CSS, PostgreSQL, Cloudflare Workers
ฐานข้อมูลPostgreSQL (Managed Cloud Service) เก็บบน SSD เข้ารหัส AES-256
เก็บที่ไหนData center ภูมิภาค Southeast Asia (Singapore) ใกล้ประเทศไทย
พื้นที่จัดเก็บเริ่มต้น 8 GB ขยายอัตโนมัติได้ถึงระดับ TB
แบ่งลูกค้ายังไงRow-Level Security (RLS) บังคับที่ระดับ database engine — ลูกค้ามองข้อมูลกันไม่ได้
ปลอดภัยแค่ไหนHTTPS/TLS 1.3, JWT, OAuth, hash รหัสผ่านด้วย bcrypt, audit log, SOC 2
Backup ยังไงอัตโนมัติทุกวัน + Point-in-Time Recovery ย้อนหลังทุกวินาที ภายใน 7 วัน
ใช้ offline ได้มั้ยไม่ได้ — เป็น Cloud SaaS ต้องการ internet (แนะนำใช้ 4G/5G สำรอง)
UptimeSLA 99.9% (~8 ชั่วโมง/ปี)
ระดับ 2 — Technical Details

รายละเอียดสำหรับฝ่าย IT

เจาะลึกสถาปัตยกรรม ความปลอดภัย และการดำเนินงาน

2.1 Technology Stack

Frontend
  • ภาษา: TypeScript
  • UI: React 19
  • Routing / SSR: TanStack Start v1
  • Styling: Tailwind CSS v4 + shadcn/ui
  • Build: Vite 7 + Bun
Backend
  • ภาษา: TypeScript
  • Runtime: Cloudflare Workers (Edge)
  • API: TanStack Server Functions (type-safe RPC)
  • Auth: JWT + Refresh Token, Google OAuth
Database & Storage
  • PostgreSQL 15+ (Managed)
  • Object storage เข้ารหัส (ไฟล์แนบ/รูป/PDF)
  • Email: Managed SMTP + pgmq + pg_cron
DevOps
  • Git + CI/CD อัตโนมัติทุก commit
  • Environment แยก: Dev / Preview / Production

2.2 Database Architecture

PostgreSQL — RDBMS มาตรฐานอุตสาหกรรมที่ใช้โดย Apple, Instagram, Reddit, Spotify และองค์กรระดับโลก จัดเก็บที่ Singapore (Southeast Asia) ตรงตามข้อกำหนด PDPA เรื่องภูมิภาค

  • Latency < 30ms จากประเทศไทย
  • SSD ความเร็วสูง, encryption at rest AES-256
  • Encryption in transit: TLS 1.3
  • Automatic vacuum & index optimization
  • เริ่มต้น 8 GB ขยายอัตโนมัติถึงระดับ TB
  • Pay-as-you-grow ไม่ต้องซื้อ hardware ล่วงหน้า

2.3 Multi-Tenant Isolation

ทุก table มีคอลัมน์ company_id + policy บังคับให้ทุก query ผ่านการกรอง — ผู้ใช้จากบริษัท A จะเห็นข้อมูลของบริษัท B เป็น 0 rows เสมอ การบังคับนี้อยู่ที่ database engine ไม่ใช่ application แม้ระบบมี bug ก็ bypass ไม่ได้

โมเดลความปลอดภัยต้นทุนScaleเราใช้
Shared DB + RLSสูงมาก (บังคับที่ engine)ต่ำดีเยี่ยม
Schema-per-tenantสูงกลางจำกัด
DB-per-tenantสูงมากสูงมากจำกัด
User Roles: เก็บใน user_roles table แยก + security-definer function has_role() เพื่อกัน privilege escalation (owner / admin / member / viewer)

2.4 Security Controls

การพิสูจน์ตัวตน
  • Email + Password (hash ด้วย bcrypt)
  • Google OAuth 2.0 single sign-on
  • JWT session + Refresh Token หมุนอัตโนมัติ
การเข้ารหัส
  • In Transit: HTTPS/TLS 1.3
  • At Rest: AES-256 บน disk
  • Backup เข้ารหัสด้วย key แยก
การควบคุมการเข้าถึง
  • Row-Level Security (ดูข้อ 2.3)
  • License code — จำกัด module + วันหมดอายุ
  • Role-based permission (owner/admin/member)
  • Rate limiting ป้องกัน brute force
Monitoring & Compliance
  • Audit log การเข้า/แก้ไขข้อมูลสำคัญ
  • Error tracking + real-time alert
  • SOC 2 Type II (infra provider)
  • GDPR-ready, PDPA-aligned

2.5 Backup & Disaster Recovery

Backup อัตโนมัติทุกวัน + Point-in-Time Recovery ย้อนหลังทุกวินาที ในช่วง 7 วัน — RTO 1-4 ชั่วโมง, RPO < 1 นาที

ประเภทความถี่เก็บย้อนหลัง
Full backupทุกวัน7 วัน (ปรับได้ถึง 30)
WAL (transaction log)ต่อเนื่อง real-time7 วัน
Geo-redundant copyทุกวันเก็บใน region อื่น
ลูกค้า export ข้อมูลได้เองที่ Settings → Backup & Restore (JSON / CSV / SQL) — ไม่ผูก vendor

2.6 Availability & Offline

ระบบเป็น Cloud SaaS ต้องใช้ internet — ออกแบบให้ข้อมูล real-time ตรงกันทุกสาขา ทุกอุปกรณ์ ไม่ต้องลง software และอัปเดตอัตโนมัติ

เมื่อ internet ล่ม
  • ใช้ mobile hotspot 4G/5G — bandwidth ต่ำ (~50-200 KB/หน้า)
  • Local cache บาง module (POS, Front Office) ดูข้อมูลล่าสุดได้
  • Auto-retry เมื่อ internet กลับมา
Uptime SLA
  • 99.9% (~8 ชั่วโมง downtime/ปี)
  • Multi-region failover สำหรับ frontend (Edge network)
  • Database มี read replica + automatic failover
FAQ

คำถามที่พบบ่อย

Q: ข้อมูลบริษัทเราจะรั่วไปให้บริษัทอื่นได้ไหม?
A: ไม่ได้ — บังคับด้วย Row-Level Security ที่ระดับ database engine ตรวจทุก query อัตโนมัติ ต่อให้ application มี bug ก็ bypass ไม่ได้
Q: ถ้าเราเลิกใช้ระบบ ข้อมูลจะเป็นยังไง?
A: Export ได้เองผ่านหน้า Settings (JSON/CSV/SQL) — ไม่ผูก vendor หลังปิดบัญชี ข้อมูลถูกลบตามนโยบาย retention (30 วัน)
Q: ระบบรองรับผู้ใช้พร้อมกันได้กี่คน?
A: Edge runtime + PostgreSQL managed service scale ได้อัตโนมัติ ปัจจุบันรองรับหลักหมื่น concurrent user ต่อ instance
Q: มีการทดสอบเจาะระบบ (Penetration Test) หรือไม่?
A: ผู้ให้บริการ infra ผ่าน SOC 2 Type II และมี pen test ประจำปี ในระดับ application เรามีการ scan security อัตโนมัติทุก deployment
Q: ถ้าต้องการเก็บข้อมูลในประเทศไทยเท่านั้น ทำได้หรือไม่?
A: ปัจจุบันเก็บที่ Singapore (Southeast Asia) ยังอยู่ในภูมิภาค ASEAN สอดคล้อง PDPA หากต้องการ Thailand-only ต้อง custom plan
Q: ค่าใช้จ่ายเพิ่มเมื่อข้อมูลโต?
A: คิดตามการใช้จริง — storage, bandwidth, compute แยกกัน แจ้งล่วงหน้าเสมอก่อนเปลี่ยน tier
อภิธานศัพท์

คำศัพท์ที่ใช้บ่อย

SaaSSoftware as a Service — ใช้ผ่านเว็บ ไม่ต้องติดตั้ง
RLSRow-Level Security — กฎกรองข้อมูลระดับ row ของ PostgreSQL
JWTJSON Web Token — token ที่ใช้ยืนยันตัวตน
PITRPoint-in-Time Recovery — กู้คืนย้อนหลังทุกวินาที
RTORecovery Time Objective — เวลาที่ต้องใช้เพื่อกู้ระบบ
RPORecovery Point Objective — ข้อมูลที่ยอมเสียได้สูงสุด
Edge RuntimeServer ที่กระจายทั่วโลกใกล้ผู้ใช้ ทำให้ตอบเร็ว
SOC 2มาตรฐานตรวจสอบด้าน security ของ service provider
PDPAพ.ร.บ. คุ้มครองข้อมูลส่วนบุคคล (ไทย)
AES-256มาตรฐานการเข้ารหัสระดับ military-grade

อยากรู้จัก almond มากขึ้น?

อ่านต่อเกี่ยวกับทีมงาน หรือคุยกับทีมขายเพื่อขอสาธิตระบบ