我们在VS2015中获得了Azure Service Fabric解决方案,其中包括许多有状态的演员和一个网站。
当网站与演员互动时,需要先启动整个本地集群,然后才能运行(和调试)网站。 我需要大约4分钟才能让一切运行!!我的大多数更改都在网站上执行,我很少改变演员背后的代码。
问题: 有没有办法在不重建整个本地serviceFabric集群的情况下运行(和调试)网站?
如果我将web项目设置为startup-project并点击f5,我会得到一个 " ReflectionTypeLoadException"跑步的时候。如果我禁用与actor交互的代码,它运行正常。
答案 0 :(得分:3)
不幸的是,由于涉及大量的NuGet软件包以及需要重新打包并重新部署到集群的事实,ASP.NET核心服务(也称为ASP.NET 5)的部署时间目前很长。更改。我们正在与ASP.NET团队合作,以加快这个调试周期。
在此期间,如果您希望在Web项目上进行大量迭代,则可以在Service Fabric应用程序的上下文之外完成这项工作 - 也就是说,创建一个独立的ASP.NET项目 - 然后拉事情稳定后,它进入Service Fabric应用程序。
答案 1 :(得分:1)
我同意缓慢的调试周期非常烦人,我很期待更好的事情。
我通过将一个Service Fabric应用程序中的后端服务与另一个Service Fabric应用程序中的Web App分离,减少了Web App服务中的等待时间。这意味着当我仅在Web App上工作时,我需要做的就是部署包含一个Web App服务的Application。它确实有点帮助,但仍远非理想。
希望有所帮助
答案 2 :(得分:0)
您是否考虑过升级而不是完全部署?请记住,F5将删除整个应用程序并重新安装,但如果您进行升级,它将只重新部署已更改的服务(网站正在运行)。
我很欣赏这不像按F5那样顺利,但是你可以自动化这个过程,使它变得不那么笨拙。
答案 3 :(得分:0)
Service Fabric SDK的最新更新支持保持群集和&停止调试后,服务结构应用程序仍处于活动状态(请参阅SDK下载中的发行说明.docx)
还有一个单节点本地群集配置可用,它真正加快了注册和放大速度。在开发过程中部署应用程序。
“我们还引入了第三个”应用程序调试模式“选项 支持您希望应用程序保持运行的方案 在调试会话结束后,在群集中。这种模式是 称为“保持申请”。 “应用程序调试模式”是一个属性 Visual Studio中的Service Fabric应用程序项目。“