我已经看到了这个问题的变体,但找不到任何处理我们特定场景的问题。
我们有一个链接到 SQL Server 数据库的现有 aps.net 网站。该数据库具有 clr 用户定义的类型,因此它只能托管在 Azure VM 中,因为云服务不支持所述类型。
我们最初想使用 vm 作为数据库和云服务作为前端,但后来出现了一些问题:
- 我们使用 StateServer 来存储状态,但 Azure 不支持。我们需要配置表存储、SQL 数据库或专用于状态管理的 Worker 角色(新的 Worker 角色是额外的成本)。由于性能,表存储并不理想。其他 2 个选项更可取,但它们会带来成本或应用程序重新配置的缺点。
- 我们使用 SimpleMembership 进行用户管理。我们需要将成员表从我们的 vm 实例 sql 服务器迁移到 Azure 的 SQL 数据库。这是一个不便,因为我们希望将所有表保存在同一个数据库中,并且拆分 2 个可能需要进行一些代码更改。
我们正在寻找一种快速的解决方案,以使该应用程序尽快上线,并且成本可控。我们正在拼命地避免重构我们的代码,以适应在 Azure 云服务中托管应用程序的一部分。
问题:
- 我们应该只使用虚拟机路线来托管所有内容吗?
- 利用 VM 实例(用于 sql server)和云服务实例(用于前端)是否有任何成本优势?
- 在我看来,每个添加到云服务的“后台进程”都需要一个新的工作者角色。例如,如果我们想为电子邮件服务启用 smtp,这将需要一个新角色,因此需要更多成本。这个对吗?