云数据库SQL Azure:从内至外话开发(下)

日期: 2010-10-18 作者:Roman Rehak翻译:孙瑞 来源:TechTarget中国 英文

接上文:云数据库SQL Azure:从内至外话开发(上)     记住SQL Azure资源限流功能,它可以确保一个占用资源较大的应用程序不会影响服务器上其他应用的正常工作。如果该进程占用了过量的系统资源,那么你的连接就会关闭,或者有运行时间过长的查询、单一事务以及长时间闲置的连接。   针对这一情况,微软建议使用TRY/CATCH来检测被关闭的连接并利用retry逻辑来重新尝试。尽管这样可以解决问题,但是这再次说明了SQL Azure并不适合(至少它的第一个版本)大量的关键业务。

这一节流限制在未来的版本中肯定不会再有,但是至少目前为止,这让许多公司都望而却步。 ……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

接上文:云数据库SQL Azure:从内至外话开发(上)

    记住SQL Azure资源限流功能,它可以确保一个占用资源较大的应用程序不会影响服务器上其他应用的正常工作。如果该进程占用了过量的系统资源,那么你的连接就会关闭,或者有运行时间过长的查询、单一事务以及长时间闲置的连接。

  针对这一情况,微软建议使用TRY/CATCH来检测被关闭的连接并利用retry逻辑来重新尝试。尽管这样可以解决问题,但是这再次说明了SQL Azure并不适合(至少它的第一个版本)大量的关键业务。这一节流限制在未来的版本中肯定不会再有,但是至少目前为止,这让许多公司都望而却步。

  另一个需要考虑的问题是你的连接字符串。稍微有些经验的开发者都知道在SQL Server中,Windows Authentication是比SQL Authentication优先考虑的。而原因的多个方面的,其中最关键的是SQL Authentication需要给用户登录密码,或者将密码存储在一个config文件中。不幸的是,SQL Azure只支持SQL Authentication,因此你需要使用用户名和密码来发送到服务器端。而最佳的做法是,以加密的方式存放在config文件当中,然后读取并对密码进行解密,生成连接字符串然后使用它来建立SQL Azure连接。

  你还有其它选择,尽管会更加复杂和耗时。你可以根据SQL Azure团队博客的做法:在Windows Azure中设置安全的连接字符串。这一系列文章一共有四个部分,本文是其中的第一部分,它将教你一步一步创建证书并对config文件进行透明地加密解密。

  谈到连接字符串,你的开发入口有一个好用的功能,可以帮助你在浏览器中生成连接字符串。在Server Administration控制台中,选择你的数据库并点击Connection Strings按钮:

  应用程序将宣誓两个连接字符串,一个对应ADO.NET,一个对应ODBC。然后在修改密码之后,将它们放到你的应用中。下面就是一个生成连接字符串的例子:

  Server=tcp:auzxsdk8w8.database.windows.net;Database=AdventureWorks;User ID=Roman@auzxsdk8w8;Password=myPassword;Trusted_Connection=False;Encrypt=True;

  要确保将Encrypt选项设置为true,因为你不希望你的密码以明显的文本方式传送到SQL Azure。

  本文介绍了一些在开发方面,SQL Azure与传统SQL Server的不同。尽管在SQL Azure与SQL Server之间还存在着这样那样的功能差异,但是我们有理由期待在不远的未来,这一差距将逐渐被填平。

翻译

孙瑞
孙瑞

相关推荐