PCF上的.net核心控制台应用程序

时间:2017-09-13 03:35:17

标签: .net-core batch-processing pcf pcfdev

我能够在PCF上部署.net核心控制台应用程序,它会引发一些内部事件并运行一段时间(借助Thread.Delay())并退出。我希望能够使用Windows机器的批处理文件远程启动和停止此应用程序。

当我将此应用推送到PCF时,我已在推送命令中明确添加了 - no-start 标记。应用程序已部署且无法启动,我可以使用 cf start 命令远程启动此应用程序。一旦它成功退出,PCF会尝试重新启动它,因为它已崩溃,所以为了重新启动我首先需要 cf stop 然后使用启动命令。

我需要帮助理解 - 如果还有其他更好的方法可以做到这一点。最初我们计划在PCF上使用任务;但根据我的理解,任务是在其他应用程序上运行的命令(如果我错了请纠正我)

任何想法都会有所帮助。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

我修改了我的app逻辑来实现这一目标。我做了以下 -

  • 使用 - no-start 标记
  • 部署应用
  • 在app entry方法中,我检查从命令行传递的arg的值
  • 如果arg == required_key然后运行作业,则返回
  • 我做了一个cf start,它构建,分阶段应用程序,应用程序启动但控制台上没有显示结果
  • cf stop
  • cf run-task APP_NAME" dotnet appname.dll required_key"

上述任务运行一次并摧毁自己。