我最近完成了 Wiki网站开发教程
(http://golang.org/doc/articles/wiki/)。我玩得很开心,我想用net
/ http包做更多的实验。
但是,我注意到从控制台运行Wiki时,该Wiki将接管控制台。如果我关闭控制台终端或停止进程,CTRL+Z
则服务器将停止。
如何使服务器在后台运行?我认为该术语在守护程序中运行。
我正在Ubuntu 12.04上运行它。谢谢你的帮助。
如果您不费吹灰之力就需要启动脚本,则可以使用该upstart
服务。请参见相应的手册页和/etc/init/*.conf
示例。创建了这样的过程之后,您可以通过调用以下命令来启动服务器
service myserver start
如果您想要更多功能,例如特定的限制或权限管理,可以尝试xinetd
。
您可以像这样开始您的过程:
nohup ./myexecutable &
该&
告诉shell在后台启动命令,保持它在任务列表。在某些外壳上,如果父外壳使用HANGUP信号退出,则作业将被杀死。为避免这种情况,可以使用该nohup
命令启动命令,该命令将放弃HANGUP信号。
但是,如果被调用的进程重新连接了HANGUP信号,这将不起作用。
确实可以确定,您需要从Shell的作业列表中删除该过程。对于两个众所周知的外壳,可以通过以下方式实现:
./myexecutable &
disown <pid>
./myexecutable &!
通常,外壳程序会输出进程的PID,然后可以使用kill
命令将其终止,以停止服务器。如果您的外壳未打印PID,则可以使用
echo $!
直接在执行后。这将打印派生过程的PID。
我用node写了一个工具,如何做到,让用户npm全局安装后,运行直接是后台运行,不需要使用类似pm2之类的工具? 类似Whistle这样的https://www.npmjs.com/package/whistle
我试图开发一个flutter应用程序,它将从服务器每10秒使用计时器获取数据。它在前景时都工作得很好。所以我按照这里提供的文档工作管理器,我可以从服务器得到数据,即使当应用程序在后台,但不能减少频率低于15分钟。我不想在原生android和iOS中编码。我该如何处理这种情况?有没有我遗漏的解决方案?
问题内容: 我有一个flask应用程序,目前正在以以下方式启动: 当我运行此脚本时,它通过打印成功执行: 但是它永远不会返回,如果我执行CTRL-C,服务器将停止。我正在尝试将其部署到生产环境中,并希望在后台运行此启动,只要服务器启动,进程就可以启动。 做这个的最好方式是什么? 问题答案: 可能是使其在后台运行的最简单方法。就是说,如果你要将其转入生产环境(如@LukasGraf所提到的那样,则不
问题内容: 我一直在为Android开发一个包含后台服务的PhoneGap应用程序。我的问题是:如何调试此服务?是否可以使用AVD进行调试并逐步进行?还是可以使用自己的设备来实现? 谢谢! 问题答案: 是的,可以使用AVD或设备来完成。查看http://www.helloandroid.com/tutorials/how-debug- service 和调试服务。
我想创建一个小应用程序,在后台记录数据。所以我试着用绑定服务。这很好,但如果我关闭应用程序,服务也会停止。< br >那么,我的问题是:使用即时服务来执行这一操作是不是一个好方法?当应用程序关闭时,我如何保持服务在后台运行(我也想在启动后启动它)?