以守护进程方式启动firefly

原地址:http://www.9miao.com/question-15-53966.html

最近看源码,查了半天,没找到已守护进程方式启动firefly的方法,自己改了改写了一个,废话不多说直接上代码。

startmaster.py 修改后的代码

  1. #coding:utf8

  2.  

  3. import os

  4. import sys 

  5. from twisted.python import log 

  6.  

  7. class Launcher:

  8.     def __init__(self):

  9.         self.serverInit()

  10.         self.daemonize()

  11.         self.startServer()

  12.     def daemonize(self):

  13.         try:

  14.             pid = os.fork()

  15.             if pid > 0:

  16.                 sys.exit(0)

  17.         except OSError,e:

  18.             log.msg("Fork 1 has failed --> %d--[%s]\n" % (e.errno,e.strerror))

  19.             sys.exit(1)

  20.  

  21.         os.setsid()

  22.  

  23.         try:

  24.             pid = os.fork()

  25.             if pid > 0:

  26.                 log.msg("Daemon process pid %d" % pid)

  27.                 sys.exit(0)

  28.         except OSError, e:

  29.             log.msg("Fork 2 has failed --> %d--[%s]" % (e.errno, e.strerror))

  30.             sys.exit(1)

  31.  

  32.  

  33.     def serverInit(self):

  34.         if os.name!='nt' and os.name!='posix':

  35.             from twisted.internet import epollreactor

  36.             epollreactor.install()

  37.     

  38.     def startServer(self):

  39.         from firefly.master.master import Master

  40.         master = Master()

  41.         master.config('config.json','appmain.py')

  42.         master.start()

  43.  

  44. if __name__=="__main__":

  45.     Launcher()

  46. ~              

复制代码

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值