Khi số lượng người dùng ứng dụng của bạn ngày càng tăng lên, dữ liệu từ đó sẽ tăng trưởng ngày càng nhiều hơn mỗi ngày, database của dự án sẽ dần trở nên quá tải. Và đây chính là lúc chúng ta cần thực hiện scale database. Hai chiến lược chính để scale database thường được sử dụng đó là: Mở rộng theo chiều dọc (Vertical Scaling) và Mở rộng theo chiều ngang (Horizontal Scaling) Cùng mình tìm hiểu về chúng trong bài viết...
Continue reading...Database Replication
Kết hợp Load Balancer và Database Replication trong cùng một hệ thống
Như đã chia sẻ trong những bài viết trước, chúng ta đã biết Load Balancer và Database Replication sẽ giúp cải thiện tính khả dụng (High Availability) của hệ thống. Vậy nếu kết hợp chúng trong cùng một hệ thống thì sẽ như thế nào? ⚙️ Luồng hoạt động Nhìn vào hình minh họa ở trên, các bạn sẽ thấy được luồng hoạt động như sau: (1)+(2) Ban đầu người dùng muốn truy cập trang web thì sẽ vẫn thông qua DNS để phân giải tên miền...
Continue reading...Database Replication
Trong bài viết về “LUỒNG HOẠT ĐỘNG CỦA MỘT ỨNG DỤNG WEB CƠ BẢN”, mình đã chia sẻ cho các bạn thấy một sơ đồ cơ bản bao gồm 1 Web Server và 1 Database để giúp các bạn dễ hiểu và tiếp cận. Tuy nhiên, trong thực tế mọi chuyện sẽ không đơn giản như vậy. Giả sử trường hợp Database duy nhất đó bị sập thì sao? Lúc ấy chúng ta sẽ không thể kết nối tới Database để thêm,...
Continue reading...