gpt4 book ai didi

SQL Azure : More Intermittent Timeouts

转载 作者:行者123 更新时间:2023-12-02 03:47:49 25 4
gpt4 key购买 nike

我们有一组 5 个在线拍卖系统,运行在 Windows Azure 和 SQL Azure 上。每个系统由一个 Web Worker 和一个或多个 Web 角色组成。每个系统都使用 ASP.NET MVC 3 和 Entity Framework 、存储库模式和 StructureMap。

辅助角色负责内务处理并运行两组进程。一组每十秒运行一次,另一组每秒运行一次。每个进程可能会运行数据库查询或存储过程。这些是通过 Quartz.net 安排的

Web 角色为公共(public)界面和后台提供服务。除了其他基本的增删改查功能之外,这两个都提供了屏幕,当打开这些屏幕时,将重复调用 Controller 方法,这将导致执行存储过程只读查询。每个客户的重复频率约为 2-3 秒。典型的用例是打开 5 个后台窗口,打开 25 个最终用户窗口 - 所有窗口都会重复访问系统。

很长一段时间以来,我们一直遇到间歇性的 SQL 超时错误。最常见的三个是:

System.Data.SqlClient.SqlException: A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.)

System.Data.SqlClient.SqlException: A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - The semaphore timeout period has expired.)

System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

唯一可预测的场景是在拍卖期间,特定 Controller -> 存储过程在事件期间开始超时(可能是由于负载)。在所有其他情况下,即使在用户不活动期间,错误似乎也是完全随机的,并且会出现单个、两个和三个等。例如,系统将运行 18 小时而不会出现错误,然后可能会因不同的管理方法而出现 5 - 10 个错误,或者可能是用户登录并查看了他们的帐户。

其他信息:

我尝试使用本地 SSMS 和 Azure 基于 Web 的查询工具在 SQL Azure 上运行受影响的查询/存储过程 - 所有这些似乎都执行得很快,最多 1 秒。查询计划没有显示任何太可疑的内容,尽管我绝不是 SQL 查询性能专家,也不是任何其他类型的专家 J

我们已将所有受影响的区域封装在 Azure SQL transient 故障处理 block 中 - 但正如此处所述 http://social.msdn.microsoft.com/Forums/en-US/ssdsgetstarted/thread/7a50985d-92c2-472f-9464-a6591efec4b3 ,他们不会捕获超时,根据“Valery M”的说法,这是有充分理由的。

尽管 asp.net 成员资格信息存储在数据库中,但我们不会在数据库中存储任何 session 信息。

我们使用 1 个“SQL Azure 服务器实例”来托管所有 5 个数据库,其中两个用于暂存,三个用于生产。所有 5 个系统通常同时处于事件状态,但在任何给定时间不太可能有多个系统处于实时负载使用状态。所有 Web 角色、辅助角色和 SQL Azure 服务器都驻留在同一个 Azure 地理区域中。

对于我们应该在哪里寻找有什么想法吗?为每个系统提供自己的 SQL Azure 服务器会有帮助吗? ...我们自己的解决方案失败 - 是否有可能让 Microsoft 开具支持票并查看我们的应用程序的幕后情况 - 如何解决这个问题?

提前致谢。

宜兰

最佳答案

SQL Azure 是一个 Multi-Tenancy 系统,您可能会受到其他租户潜在的过度使用的影响。微软在限制其他租户方面做得不错,但偶尔 SQL Azure 查询会超时..

要向 Microsoft 开放支持,请访问此页面:https://support.microsoft.com/oas/default.aspx?gprid=14919&st=1&wfxredirect=1&sd=gn

关于SQL Azure : More Intermittent Timeouts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11147490/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com