การทำให้ SaaS Solution ของเรานั้นสามารถที่จะ Scale ได้อย่างมีประสิทธิภาพนั้น อาจจะทำการ Refactor Infrastructure/Application ของเรา เพื่อให้สามารถรองรับการ Scale ได้ การทำ Refactor คือการแก้ไข Code หรือ Configuration นั่นเอง
โดยทั่วไปแล้วหากการพัฒนาต้นแบบ Solution ของเราเป็นการสร้างจากเครื่องคอมพิวเตอร์ Notebook หรือ Co-location ส่วนใหญ่แล้วเราจะสร้างโดยให้ทุกอย่างอยู่ที่เครื่องเดียวทั้งหมดไม่ว่าจะเป็น Application Server และ Database Server ซึ่งใน Practice ที่ดีเราควรจะแยกในส่วนต่างๆ ดังนี้ โดยแต่ละส่วนควรจะแยกออกจากกัน (Loosely Couple)
ส่วนประกอบของ Web Application Solution
การแยกส่วนประกอบออกจากกัน ควรแยกดังนี้
- Code คือส่วนที่ไว้ใช้สำหรับการเก็บโปรแกรมของเรา ส่วนใหญ่ Code จะอยู่ในส่วนที่เป็น Web/App Server
- Session คือส่วนที่ไว้ใช้การเก็บข้อมูลชั่วคราวหรือการใช้งานบนระบบของเรา
- File คือส่วนที่เก็บพวกรูปภาพ ไฟล์ หรือ PDF ที่ได้มีการสร้างขึ้นมาไว้ให้กับผู้ใช้งาน
- Transaction คือส่วนที่เก็บ Transaction Data หรือข้อมูล Master Data ต่างๆ
Component
เมื่อเราย้ายขึ้นไปบน AWS เราสามารถใช้ Managed Service เพื่อให้ตอบโจทย์ในการให้บริการของ SaaS เราได้อย่างมีประสิทธิภาพและเพิ่ม SLA ให้กับระบบของเรา
- Code สามารถใช้ Amazon ElasticBeanstalk (PHP, Go, .NET, Java, Node.JS, Python)
- Session สามารถใช้ Amazon ElastiCache (Redis, Memcache)
- File สามารถใช้ Amazon S3
- Transaction สามารถใช้ Amazon RDS (MySQL, PostgreSQL, MS SQL)
เดลิเทค สามารถที่ช่วยให้คุณสามารถเริ่มต้น SaaS Solution จากประสบการณ์การทำงานสามารถติดต่อได้ที่ Contact Page