Tôi đang chơi với ý tưởng sử dụng RavenDB làm kho dữ liệu cho một ứng dụng rất có thể sẽ có một giao diện người dùng HTML, một giao diện người dùng WebService và các tiện ích máy chủ cũng sẽ truy cập dữ liệu. Một lý do cho việc sử dụng RavenDB là việc mở rộng theo chiều ngang mà nó cung cấp thông qua việc sao chép và sharding. Tuy nhiên, nó có vẻ như có một số cân nhắc xung quanh chạy Raven như một dịch vụ Windows hoặc chạy nó thông qua IIS.Tôi có nên chạy RavenDB như một dịch vụ Windows hoặc thông qua IIS không?
- An ninh - Là dịch vụ Raven an toàn hơn hoặc sẽ sử dụng IIS cho phép tôi linh hoạt hơn để hạn chế bởi địa chỉ IP, NET Membership vv
- Caching - Nó có vẻ như IIS là sự lựa chọn tốt hơn cho tính năng này
- Kiến trúc - Vì tôi không muốn bất kỳ bên thứ ba nào truy cập vào kho lưu trữ dữ liệu thực sự có ý nghĩa khi tiếp xúc với Raven thông qua IIS. Ngoài ra, sẽ có một lớp nghiệp vụ giữa Raven và các giao diện người dùng và tiện ích khác nhau, do đó liên quan đến IIS có vẻ không cần thiết và có thể dẫn đến sự phức tạp không cần thiết.
- Hiệu suất - Đường ống IIS có thể có nhiều phí trên mỗi yêu cầu hơn là dịch vụ cửa sổ
- Chia tỷ lệ - Sử dụng IIS có thể phức tạp hơn trên nhiều máy chủ thay vì cài đặt dịch vụ Raven với một tệp hàng loạt nhỏ
EDITED
tôi có thể hiểu được sử dụng cấu hình Embedded Raven nếu tất cả các bạn có là một khách hàng web duy nhất nhưng khi bạn có khách hàng khác nhau, API Raven cần phải được tiếp xúc một cách độc lập để ngăn chặn một khách hàng fro m khóa các tập tin dữ liệu.
Cảm ơn bạn đã trả lời. –