- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们的 Azure 网站出现问题,该网站间歇性失败并出现以下错误:
[SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)]
和
HttpException (0x80004005): Unable to connect to SQL Server database.
我所说的间歇性是指您可以启动一个新的浏览器 session ,它会再次正常,然后在当天晚些时候它会失败。
网上有很多针对此错误的建议,但这都涉及正确设置连接字符串或修复 web.config 中的 roleManager 或成员资格。这些解决方案似乎都不兼容我们网站上的间歇性错误(即,如果我们的连接字符串或 web.config 不正确,则网站可能总是失败)。
这可能与我们现有的网站 foo.azurewebsites.net
和代码库有关,我们切换到 bar.azurewebsites.net
并大幅更改了代码库(尽管从相同的原始文件开始)。我们还添加了一些简单的角色管理代码。是否有可能由于缓存,新站点有时会尝试连接到旧站点的数据库(现已消失)?
但我们有一位用户费力地帮助我们,从他的缓存中删除了与“旧”网站相关的任何内容......这解决了他的问题......但第二天问题又出现在他身上。
更新
最近,我坐在这里,同时进行了 2 个 Chrome 浏览器 session (不同的用户登录),一次又一次地访问该网站。一个 session 出现 100% 错误,其他 session 出现 0% 错误。但我现在无法重现它。对我来说完全没有错误。但用户仍然表示,他们的错误率高达 80% 到 90%。
更新
今天早上它再次出现故障(对于一个浏览器 session ),无论我尝试刷新多少次。我在它旁边启动一个不同的浏览器窗口/身份就可以了。
更新
也许我也有同样的问题问here 。删除 cookies 似乎可以解决我的问题,就像 Mark Heath 的文档一样。目前正在尝试马克自己发布的答案,看看它是否也对我的情况有帮助。
最佳答案
假设您正在使用 Entity Framework
警告:这仅适用于 EF6+。如果您使用 EF5 并遇到此问题,请考虑更新 - 这很容易。
如果您在 Azure 中遇到间歇性数据库连接问题,则应实现重试策略。您可以通过 SqlAzureExecutionStrategy
来完成此操作。此处详细描述:http://msdn.microsoft.com/en-us/data/dn456835.aspx
以下是启用此功能的方法:
public class MyConfiguration : DbConfiguration
{
public MyConfiguration()
{
SetExecutionStrategy("System.Data.SqlClient", () => new SqlAzureExecutionStrategy());
}
}
然后您需要使用配置属性来装饰 DbContext:
[DbConfigurationType(typeof(MyConfiguration))]
public class MyDbContext : DbContext
{
// blah
}
如果您手动启动了事务,则需要禁用重试策略。为此,您需要将 MyConfiguration 更改为如下所示:
public class MyConfiguration : DbConfiguration
{
public MyConfiguration()
{
this.SetExecutionStrategy("System.Data.SqlClient", () => SuspendExecutionStrategy
? (IDbExecutionStrategy)new DefaultExecutionStrategy()
: new SqlAzureExecutionStrategy(1, TimeSpan.FromSeconds(30)));
}
public static bool SuspendExecutionStrategy
{
get
{
return (bool?)CallContext.LogicalGetData("SuspendExecutionStrategy") ?? false;
}
set
{
CallContext.LogicalSetData("SuspendExecutionStrategy", value);
}
}
}
并像这样包装您的事务调用:
MyConfiguration.SuspendExecutionStrategy = true;
// start transaction
// do transaction stuff here
// commit/rollback transaction
MyConfiguration.SuspendExecutionStrategy = false;
代码从这里无耻地被盗:http://msdn.microsoft.com/sv-se/data/dn307226.aspx
关于asp.net-mvc-4 - 同一台计算机上的两个 Chrome session - 一个将连接到我们的 Azure 网站,另一个 "unable to connect to SQL Server database",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24149044/
这个问题在这里已经有了答案: android studio adb Syntax error: ")" unexpected (4 个答案) 关闭 5 年前。 我确实将我的工作室更新到 Linux
当我打开 Android Studio 时,它会显示下面的对话框,我的应用程序无法以 Debug模式运行。 最佳答案 找到sdk->platform-tool文件夹,然后运行命令adb tcpip 5
我在 Fedora 33 机器上使用了 VSCode (1.52.1) 一段时间。 我正在使用 Docker 扩展 (v1.9.0) 但由于某种原因,在过去几天中,当我尝试将 VSCode 附加到 D
我正在尝试为我的任务加载一个名为“tr_model.h5”的预训练模型,但出现以下错误: Traceback (most recent call last): File "Trigger_Proje
我最近在 Google Play 中发布了一个 Android 应用程序,到目前为止一切看起来都很棒,但有一个异常(exception)(见下文),我有时会收到控制台崩溃的消息,它只发生在某些用户身上
单击警告时,我收到此消息。这是案件的截图。 错误写道, Unable to open 'warning.cpp': Unable to read file '/Users/dimen/code/C++
重新编译 php 后,当我使用 php cli 时出现以下错误: PHP Warning: PHP Startup: imap: Unable to initialize module Module
使用 git 1.6.4.2,当我尝试 git pull 时出现此错误: error: unable to resolve reference refs/remotes/origin/LT558-op
我是 Kotlin 的新手,我正在学习教程。运行我的应用程序会导致它在运行时崩溃。我在底部导航栏应用程序中有三个 fragment 和一个主要 Activity 。我的目标实际上只是成功运行该应用程序
我在 Windows 10 64 位上运行 Android Studio。我在 5 月 20 日早上升级到了最新的版本和 SDK,从那时起,我在打开 Android Studio 时收到上述错误。我还
因此,我创建了一个 GitHub 操作,该操作应该在发生推送时构建 docker 镜像并将其推送到 docker hub。所以这是我的 GitHub 操作:(第一次创建 GitHub 操作) name
当这些问题中的任何一个都没有帮助我时,这意味着我需要删除并重新安装 Android Studio。 这是错误: Error initializing ADB: Unable to create Deb
Iam running the latest OSX/Flutter/XCode Versions using flutter, android studio and firebase and
我最近重新安装了 ubuntu 20.04.3,在做了一些设置后,我现在在运行 apt update 时总是收到以下错误.我一定是不小心删除了某种缓存文件或目录,但我不知道如何诊断或解决这个问题。 任
今天,当我将更改推送到 Gitlab 中的代码存储库时,我才开始在 Gitlab 中收到此错误消息。 Gitlab fatal: unable to access '.......' SSL Cert
我正在使用 Protractor 和 Jasmine 。 我已经确定了 chrome 驱动程序版本:2.32.498550 (latest)与 Chrome 测试版不兼容 (Version 62.0.
我正在尝试使用 terraform (0.12.24) 和多个 Docker 提供程序(插件版本 2.7.0)执行简单部署。我使用下面的 Terraform 模板的目的是将两个不同的容器部署到两个不同
这个问题我看了很久,最后决定在这里提出来。我需要维护一些用 Delphi 2007 for .NET (ASP.NET 2.0) 编写的应用程序。通常,第一次运行应用程序(使用 IIS)时,我会收到经
如何修复 - 无法创建调试桥:无法启动 adb 服务器:无法检测 adb 版本,adb 输出:/home/dilip/Downloads/sdk/platform-tools/adb: 1:/home
通过命令提示符连接到 android 中的 Sqlite DB 时出现错误。 以下是我遵循的步骤: 我已经在 android 中通过 java 程序创建了 Sqlite 数据库。创建表并向其中插入数据
我是一名优秀的程序员,十分优秀!