我想运行perl6 6/raku Cro应用程序,作为前端run服务器后面的服务。
只要运行cro run,就不会在分段故障和重新启动之后处理重新启动。
在perl5之前,我使用过FastCGI -但是Cro::HTTP::Server的Cro::HTTP::Server.new().start()成语看起来与FastCGI::Cro::HTTP::Server.new().start()的while $fcgi.accept() {}示例不兼容。
由cro stub生成的cro stub确实有一个SIGINT处理程序,但是我不确定这是否足以在systemctl服务中指向它,即
[Service]
ExecStart = /path/to/service.p6人们目前是如何托管Cro应用程序的?
发布于 2019-11-12 23:24:33
cro run是作为一种开发工具,而不是部署工具,因此确实不是托管服务的好选择。
我直接负责的所有Cro服务都是容器化的(关于这方面的一些指导),然后在托管的Kubernetes集群上运行。Kubernetes负责自动重新启动,推出新版本等等。我也知道docker-compose正在被用来代替Kubernetes,我想这是可行的,尽管我认为这也被认为是一种主要的开发工具。
将其设置为systemctl服务也应该很好,只要配置为始终重新启动。然而,似乎SIGTERM使干净的关机工作,而不是SIGINT (处理两者都没有错)。
我还在Cro前面放置了一个前端web服务器(使用Apache,尽管nginx也是一个很好的选择),还可以使用它对静态内容进行缓存(在我的路由中使用content-control来描述不牢靠性)。
https://stackoverflow.com/questions/58821682
复制相似问题