4

我在 Azure 上使用 MVC 4,它的加载速度非常慢(超过一分钟)。以下是几个页面的加载时间: http://i.imgur.com/V4brS.png (6.9 分钟是我尝试加载不同页面的 7 个标签时)

当我在本地使用 Azure 模拟器时,不会出现此问题。

我尝试过使用一个超大的实例,并使用远程桌面在本地运行该站点,但速度同样慢。我也尝试过使用 IIS Express 和普通 IIS,但也没有。

我使用“Internet 应用程序”模板创建了一个全新的 MVC 项目,其中包括安全性,而且它也很慢,所以我很确定我在项目中使用的其他东西不会导致问题。以下是仅使用默认 MVC 项目的加载时间: 在此处输入图像描述

我最初为我的会员数据库和我的网站使用单独的关联区域,但我尝试在带有表单身份验证的空白 MVC 模板和我的项目上使用匹配的关联组。

重新访问页面并没有显着提高它们的速度。

我还尝试创建一个没有身份验证的 MVC 站点,生成一个 10x5000 表:

<html>
<body>
    <table>
        <thead>
            <tr>
                @for (int i = 0; i < 10; i++)
                {
                    <th>@i
                    </th>
                }
            </tr>
        </thead>
        <tbody>
            @for(int i = 0; i < 5000; i++)
            {
                <tr>
                    @for(int j = 0; j < 10; j++)
                    {
                        <td>Row @i , column @j</td>    
                    }
                </tr>
            }
        </tbody>
    </table>
</body>
</html>

这在本地和云端都可以正常加载。即使是冷启动,也只有 ~10-15 秒。

所以我相当确定问题出在 ASP.NET 的配置文件/成员身份/身份验证中,但仅在它部署到 Azure 时(因为我在本地运行时使用与 Universal Providers 相同的 SQL Azure 数据库,并且有不是这些减速)。

我预计这个问题会更常见,但唯一真正相关的是: social.msdn.microsoft.com/Forums/en-US/windowsazuremanagement/thread/7d3323d8-571b-4b8f-9fdb-bd5ccc6c39b7 (可能是这个:stackoverflow.com/questions/10791433/saving-changes-very-slow-via-datacontext

按照该线程中的建议,我正在尝试尝试:windowsazure.com/en-us/manage/windows/best-practices/

4

1 回答 1

0

您是否检查过数据库服务器的防火墙规则中是否选中了“允许其他 Windows Azure 服务访问此服务器”?

我想知道提供者是否无法访问数据库并在最终超时之前重试(不过,老实说,我希望会抛出异常)。

如果您为网络添加了防火墙规则,但没有为 Azure 本身添加防火墙规则,您可能会遇到此类问题。

于 2012-10-30T20:02:01.193 回答