Theo kinh nghiệm của tôi với kiến trúc MSOA, tôi chưa bao giờ thấy
NHIỀU (nguồn dữ liệu mỗi trường hợp)
được sử dụng. Ngay cả khi bạn dự định tải nó nặng nề, các DB phổ biến nhất theo bản chất sẽ hỗ trợ truy cập đa luồng. Thông thường nút cổ chai (hoặc phần chậm nhất) của hệ thống DB là đĩa. Chúng tôi đã phải mở rộng quy mô cụm của mình vài lần (tương đối rẻ nếu bạn ở trên đám mây, nhưng khả năng mở rộng cũng có thể trở thành một vấn đề, vì nhiều chủ đề hơn sẽ được yêu cầu để quản lý và thực thi hệ thống DB được chia tỷ lệ). Hãy nhớ rằng một số RDBMS sử dụng một DB tạm thời (tempdb) được sử dụng bởi tất cả các DB trên cá thể đó để phân loại, băm, biến tạm thời, vv. Đa luồng và chia nhỏ các tệp tempdb này có thể được sử dụng để cải thiện thông lượng của tempdb , do đó cải thiện hiệu suất máy chủ tổng thể.
Kể từ bây giờ tôi làm việc với Orchard, tôi phải nói rằng có một số trường hợp góc, khi hành động của bạn trên một trường hợp không hoàn toàn (và kịp thời) đồng bộ hóa. Điều này khiến quyền truy cập tài nguyên bị từ chối (ngay sau khi đăng ký sự kiện) ngay cả sau khi xác thực chính xác.
tôi có kế hoạch để ẩn nhiều trường hợp sau cân bằng tải
Đây là một thiết kế thích hợp cho các máy chủ ứng dụng của bạn, vì vậy sử dụng một cụm DB nên phù hợp là tốt. Hướng tới câu trả lời đầy đủ - bạn có thể xem xét DWH, trong trường hợp bạn có nhiều dịch vụ và bạn muốn có thể thực hiện một số khai phá và phân tích dữ liệu từ tất cả các DB của họ.