我目前正在使用 WCF 为应用程序开发服务。我想在 windows-azure 上托管这些数据,它应该托管来自不同用户的数据。我正在寻找我的数据库的正确设计。在我看来,只有两种不同的可能性:
- 为每个客户创建一个新数据库
- 将客户 ID 存储到每个表(或当每个表通过实体连接时的主表)
第一种方法具有非常好的速度和隔离性,但它在 Windows azure 上非常广泛(或者我是否理解一些azure 定价错误?)。此外,我不知道如何以这种方式配置 WCF 服务,因为它总是使用另一个数据库。
第二种方法速度慢,隔离性差。但它易于实施且成本更低。
现在我的问题是:有没有其他方法可以使用 azure 实现数据的高度隔离以及轻松集成到 WCF 服务中?我应该使用什么设计,为什么?