最大限度地减少服务器和 Web 应用程序之间的延迟

问题描述

大家好,我有一些关于 Azure 应用服务和 MysqL 应用内的问题,希望我能从你们那里得到一些建议。这里的情况我有一个在 azure linux 操作系统上运行的 Web 应用程序,但是一个应用程序内的 MysqL 数据库。到目前为止,查询工作得很好,但这里的事情是我被告知要尽量减少 Web 服务和数据库间的延迟。我已经使用 Postman 检查了我的查询时间响应,响应时间在 1000 毫秒-2.5 秒左右,我不知道是否可以将 Web 服务和数据库间的延迟减少到 500 毫秒甚至更好?谢谢。

解决方法

导致响应延迟的原因有很多。很难说如何减少它,但一般来说,它可能是由以下原因引起的:网络延迟、您的应用服务业务逻辑、SQL 查询复杂性、SQL 服务器性能

所以我的建议是:

  1. 在用户附近的区域部署您的应用服务以减少网络延迟。
  2. 如果您的业务逻辑很复杂,并且您的应用服务 CPU 使用率很高,请将其向上扩展。
  3. MySQL In-app 仅用于开发,其性能不是很好,不建议用于生产,您可以在与您的应用服务相同的区域创建一个新的 Azure MySql 实例以获得良好的 SQL 性能。
  4. 优化您的 SQL 查询以获得更好的 SQL 查询效率,例如为查询始终使用的列创建索引,避免在 DB 中存储大文本或二进制文件,以及为始终查询但成本高的数据创建缓存.