数据库可伸缩性的最佳实践是什么?

时间:2014-06-09 20:22:07

标签: mysql asp.net sql-server

注意:我对存储和访问在线数据库完全不熟悉。我有,徘徊,自学足够的asp.net / SQL,html和JS来创建一个Web应用程序。目前我在Godaddy帐户上托管了一个Web应用程序,其中包括一个SQL Server,我用它进行登录验证(它支持asp帐户向导 - 这就是我使用它的原因)。我知道我的应用程序将很快填满该数据库(这是1 gig限制),所以我希望使用10个包含的Godaddy帐户与SQL服务器结合的MySql数据库。我的问题是:我可以使用SQL服务器来处理帐户和身份验证,然后将用户数据存储在MySql数据库中吗?还是我完全出去吃午饭了?我想第一次正确设置,以便我可以安全地扩大规模。 或者,我应该完全忘记Godaddy并尝试MS Azure吗? 感谢

2 个答案:

答案 0 :(得分:2)

是的,你绝对可以这样做。单个应用程序使用多个数据源是相当常见的(尽管通常不是出于这个原因)。

如果您使用的是Entity Framework,请查看MySQL文档,以便在.NET应用程序中进行设置

http://dev.mysql.com/doc/connector-net/en/connector-net-tutorials-entity-framework-winform-data-source.html

请记住,您将拥有管理两个不同数据库(备份/恢复/维护)的复杂性。

答案 1 :(得分:1)

您询问有关扩展的最佳做法。

最佳做法是避免使用多种并行技术(例如SQL Server和MySQL)。这是因为使用单一技术的网络应用程序更容易迁移到功能更强的托管平台。如果您取得任何成功, 需要离开Go Daddy托管。

另一个最佳做法是尽可能简化数据库访问层并尽可能保持供应商中立。尽可能避免使用特定于供应商的功能。这使您能够以合理的成本切换供应商。当客户成功并需要快速扩展时,商业数据库和基础设施供应商依靠其利润来锁定客户。

第三个最佳实践是避免混合数据库连接和应用程序逻辑。