SaaS 101 - Architecture 3

SaaS 101

Sambungan ...

SaaS Architecture 3
---

Bagi Architecture 3 ni kitaorang develop billing management sendiri. Tak gunakan platform WHM & WHMCS untuk manage billing.

Database adalah centralize. Dimana satu database digunakan untuk tenant & billing manager. App di pasang pada satu instance server dan auto scaling berdasarkan resource yang digunakan.

Data pengguna di isolate pada peringkat table. bukan lagi gunakan database yang berasingan.

Pro
---
1. Scaling app dengan mudah.
2. Kos server dikurangkan. Scaling up bila perlu dan down bila resource berkurangan.

Cons
---
1. Data tidak lagi isolate per DB.
2. Cabaran bila perlu update schema DB. ( bila rekod dah > 10 mil ). It take a few days untuk update schema.
3. stage/batch update tak dapat dilakukan per server jika ada db changes. jadi tak boleh test new features untuk certain user group dulu. Alternative, perlu control features dlm app rule jika mahukan fungsi ni.
4. DB tidak scaling-out


# walau bagaimanapun downtime dapat dikurangkan dengan tools pt-online-schema-change by percona https://www.percona.com/doc/percona-toolkit/LATEST/pt-online-schema-change.html

Bersambung Architecture 4 ...


Ulasan