【问题标题】:asp net core 2.0 mvc + kestrel - load MySql assembly on start of application?asp net core 2.0 mvc + kestrel - 在应用程序启动时加载 MySql 程序集?
【发布时间】:2017-10-03 20:54:55
【问题描述】:

我有一个使用 MySql 的 asp net core 2.0 mvc 网页,来自 MySql 数据库的第一个请求需要 5-10 秒才能加载,但任何后续请求都快得多,每个请求大约半秒。有没有办法在kestrel启动的时候加载MySql依赖,这样网页上就没有滞后时间了?

我读过关于程序集注入的文章,但这些都是基于核心 1.0 的。我将如何在核心 2.0 中实现这一点?

【问题讨论】:

    标签: mysql asp.net-core-mvc asp.net-core-2.0 kestrel-http-server


    【解决方案1】:

    没有什么可以阻止您在 Startup.cs 末尾创建 DbContext 并读取一些虚拟数据。另一方面,朋友之间的 5 - 10 秒是多少,尤其是当它只是您第一个访问该网站的朋友时。毕竟,这通常是部署应用程序的人员或流程,以确保一切正常。

    【讨论】:

    • 原来是 MySQL 数据库在做反向 dns 查找,花了很长时间,如果在几分钟内没有再次连接,它会丢失主机信息并占用再次查找 5-10 秒。我最终每隔几分钟创建一个计时器来与 MySQL 进行打开/关闭数据库连接,从而达到目的。感谢您提供建议
    • 这实际上是一个很长的查找时间。
    • 是的,它是一个旧版本的mysql,我无法控制,但现在只要每隔几分钟打开一次数据库连接,任何网页数据库查询都是即时的。跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-28
    • 1970-01-01
    • 2013-05-02
    • 2020-10-13
    • 2017-04-15
    • 2021-09-27
    • 1970-01-01
    相关资源
    最近更新 更多