我们必须转换为ASP MVC,这是越来越大的解决方案。
现在的问题是:应用程序的启动大约需要15+秒,因为应用程序需要预先缓存了很多东西从数据库中。
现在,在ASP MVC的问题是,我们每次在控制器改变的东西时,整个应用程序被关闭并restartet,在Global.asax中所有的东西再次执行(如果应用来自一个“冷启动”为
想象一下:你写了一个简单的if条件,由你把错误的参数事故 - >你必须纠正,如果条件。 - >整个应用程序是restartet。
因此,我们有我们每次改变哪怕是很小的事情等待的时间超过15秒。
在老ASP.NET,你放在最的.aspx,文件中的代码这只是重新解释的,但整个应用程序没有关闭等。
是否有变通方法吗? 像-lets称的 - “解释控制器”,而不是编控制器?
此ASP MVC的行为使得它真的很烦人,目前的解决方法是将尽可能多的东西,可能到的意见,这是不好的做法 - 但嘿,它可以帮助我们,因为我们不必等待超过15秒,直到控制器重新编译和应用程序重新启动。
任何想法?
问候
因为应用程序需要预先缓存了很多东西从数据库
对我来说,这就是问题所在。 不是事情本身(这是相当正常的),但事实上,你是不是短路任何东西,例如缓存的数据卸入商店或...为发展宗旨,文件系统。 我打算让你进入的时候我在本地调试发生了什么一个小秘密:
基本上,它秘籍: 只有在发展 ,避免启动时运行的任何昂贵的操作,它在本地磁盘上的文件首先检查(用正确的名称),并得到它从那里需要的关键数据,而不是数据库; 如果它击中数据库,它存储之后获取的数据。 显然,有一些机制来刷新该文件,并在内存中的存储,所以如果需要的实际数据可以获取。
它不是一个魔术棒,但它可以帮助。 其他的事情,很明显,是加快初始加载时间 。 我会感到惊讶,如果这是你的情况是不可能的。
已经在Microsoft事件在几个星期前,重点是ASP vNext。
我们也讨论了这个问题:它实际上是由之前vNext ASP / MVC的版本设计。
在下一版本的“ASP vNext”,你可以在飞行中改变控制器代码,而无需重新编译整个项目的(因此,防止关闭整个Web服务器进程)
好消息 - 至少对未来;-)