【问题标题】:Wordpress slow on azureWordpress 在 azure 上运行缓慢
【发布时间】:2016-08-13 19:49:14
【问题描述】:

我有一个 Wordpress 站点,托管在带有 ClearDb (Titan) 的 Basic(小型)Azure Web 应用程序中。我还使用 Azure SQL DB 在此 Basic 服务计划中托管了另一个 Web 应用程序。我遇到了一些延迟问题,但最终使用持久连接解决了 (Azure web app slow server response time)。

鉴于其他应用程序运行良好,并且一旦页面加载,Wordpress 网站也运行良好,我认为问题可能出在数据库连接上。我尝试在 Azure VM 上的 docker 映像中托管 MySql,但性能没有提高。

请注意,当网站处于冷态时,页面会在大约 20 秒 内加载。如果可以将其缩短到 1-2 秒左右,我会很高兴。

我尝试设置output_buffering = Off;,但没有任何改善。我也启用了 AlwaysOn。

有什么建议可以改善延迟吗?

【问题讨论】:

  • 你可以尝试使用azure.microsoft.com/en-us/blog/…来优化你的wordpress网站
  • 嘿 Gary,我已经尝试了这里的大部分要点,但正如我的问题所说,我在冷启动方面遇到了最大的问题 - 即使我启用了 AlwaysOn。

标签: wordpress azure azure-web-app-service


【解决方案1】:

尝试在设置中启用 Always On。 20 秒是一个非常严重的数字,但 Always On 应该可以消除冷启动的问题。

UPD:下一步 - 启用 Application Insights(设置中的性能监控)以查看您的性能情况。真的很难说可能是什么问题 - 您可以检查您的数据库和您的网站是否在同一个区域(但是,因此我没有遇到这样的数字)。

【讨论】:

  • 我忘了说,但我启用了 AlwaysOn。
  • Application Insights 会起作用吗?当我启用它时,它说它适用于 .net 应用程序,并且大部分代码都在“C#”中。只有浏览器页面加载数据磁贴可以与js 一起使用。我会尝试设置它。
  • 哎呀,那么其他地方有问题。是的,AppInsights 的优点在于您可以使用它。看看如何配置模块。 azure.microsoft.com/en-us/blog/…
  • 我已尝试按照教程进行操作,可能需要更多时间,因为您需要一个组织帐户来设置 AppInsights,并且教程的部分内容非常模糊 - 即您需要设置其他服务仅适用于组织帐户,但没有链接教程。
  • @Pio 顺便说一句,你看到了吗? azure.microsoft.com/en-us/blog/…
【解决方案2】:

这是由于 PHP 的输出缓冲,它没有在 Azure WebApp 上配置。 要解决此问题,您可以在 web.config 文件中添加以下代码并重新启动您的 WebApp。

<configuration>
      <system.webServer>
         <handlers>
            <add name="PHP-FastCGI"
                path="*.php"
                verb="GET,HEAD,POST"
                modules="FastCgiModule"
                scriptProcessor="D:\Program Files (x86)\PHP\v5.4\php-cgi.exe"
                resourceType="Either"
                requireAccess="Script" 
                responseBufferLimit="0" />
         </handlers>
      </system.webServer>
</configuration>

【讨论】:

  • 你引用本地驱动器scriptProcessor="D:\Program Files (x86)\PHP\v5.4\php-cgi.exe"是故意的吗?
【解决方案3】:

请查看此参考以提高 Azure Web 应用程序上的 WordPress 性能:https://blogs.msdn.microsoft.com/azureossds/2016/05/15/improving-wordpress-performance-on-azure-web-apps/

【讨论】:

  • 链接不再存在。有什么建议吗?
【解决方案4】:

帮助我的是将 webapp 和 db (azure mysql) 放到同一个区域。在我这样做之前 - 一切都非常缓慢,但是一旦我使用同一区域中的两种资源重新创建应用程序,应用程序变得非常活泼。

我第一次创建应用程序时,它的资源组位于美国中部,但显然 azure mysql 在此阶段不可用,因此我不得不将数据库放在其他地方,导致速度缓慢。

我还打开了“始终开启”选项。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多