Cloud hay mua VPS rồi tự setup hết?

Hi các bạn,

Hôm nay rảnh quá làm thêm bài nữa trước khi lên máy bay đi du lịch. Câu hỏi đơn giản:

Tự mua VPS setup hết cho cái app hay xài cloud?

Hãy cùng nhau phân tích từng cái rồi đưa ra conclusions nào.

Tự Setup

Để bắt đầu món ăn này, chúng ta cần nguyên liệu như sau:

  • VPS (tự mua, giá cả tha hồ lựa, providers ko thiếu)

Khi có VPS, ta sẽ:

  • Tự setup các softwares/runtime cần thiết để chạy application của bạn
    • VD: nginx/apache, php, mysql,…
  • Deploy application lên server
  • Setup cái DNS (trỏ domain vào server)
  • Setup cái SSL (vd như letsencrypt) hoặc paid-SSL
  • Application is up and running

Cloud

Ở đây mình xài AWS cho dễ hiểu nhé, AWS hay GC cũng như nhau thoy.

Cũng tương tự như “Tự Setup”, với AWS ta sẽ cần:

  • 1 con EC2 – setup web server (VPS)
  • 1 con RDS cho DB

Khỏe hơn cái, là DB đỡ fải setup trong VPS, AWS sẽ giúp mình làm hết và provide mình cái endpoint & credentials để connect.

Comparison between 2 options

  • Tự manage:
    • Rẻ, cực rẻ vì mình có thể đi chợ, lựa provider rẻ nhất. VD Vultr $12 bạn dc 1 con 1 core / 2gb ram
      • Support hên xui
      • Uptime hên xui nhưng 99.8% là có thể, 99.9% cho các providers uy tín như DigitalOcean, Vultr,…
      • Tùy vào gói, sẽ bị limited băng thông
    • Phải tự chủ động manage mọi thứ từ:
      • Securities
      • Logs
    • Không có nhiều thông tin cho server analytics, đa số ta chỉ thấy dc overview usage.
    • Upgrade cấu hình requires app downtime vì đa phần phải take snapshot, tạo instance rồi cài snapshot đó vào.
    • Tùy vào provider mà sẽ có auto backup hay không.
    • Phù hợp cho:
      • Applications nhỏ và vừa.
      • Túi tiền ko nhiều.
  • Cloud:
    • Giá sẽ cao hơn bình thường.
    • Các services đã dc self-managed từ AWS, mình sẽ đỡ lo về phần setup (với RDS, cũng như performance tuning) và securities.
      • Vẫn phải lo các phần nho nhỏ khác như Logging, cleaning,…
    • Có tính phí băng thông (in / out externally), internally đa phần sẽ free.
    • Uptime cao 99.98%, phủ sóng toàn thế giới.
    • Upgrade cũng requires downtime.
    • Có auto backup (trả thêm tiền)
    • Phù hợp cho:
      • Các applications vừa và lớn.
      • Tiền bạc ổn định.

Khi tính tới scaling (horizontally nhé, chứ vertically thì ai cũng làm dc cả):

  • Tự manage:
    • Mua thêm VPS để setup load balancer, database,…
      • Tùy providers mà họ có storage server hay không. CDN từ mấy cái này cũng hên xui về tốc độ truyền tải files.
    • Tự configure all of the things
    • Tự manage tất cả
    • => Khá nhiều thứ để phải lo
  • Cloud:
    • Đơn giản chỉ cần deploy và configure trên UI
    • Sửa code chút cho compatible với Cloud
    • Trả thêm tiền
    • => Cloud vẫn lo giúp bạn 60%, 40% là của bạn tự lo.

Cheers!

facebook
Seth Phát

Seth Phát

Mình là Phát - biệt danh Seth Phát. Hiện đang là một Sr. Full-Stack Engineer. Mình là một người yêu thích và đam mê lập trình và hiện tại đang theo về phần Web là chủ yếu. Mạnh Back-end và khá Front-end, vẫn đang theo đều cả 2 :v. Còn gì bằng khi được làm những thứ mà mình yêu thích, đam mê ;)

Leave a Reply

Your email address will not be published. Required fields are marked *

Bình luận qua Facebook