まとまりのないブログ

something which something is something

Tips

twistedをバックグラウンドで起動させる

投稿日:

twistedのプロセスとして起動させてバックグランドで実行できるようにする。そうしないとターミナルをずっと立ち上げたままにしておかないといけないのでそうせざるをえないというか。それを可能にさせるのがtwistdまたはtwistd3。twistdで実行するためのpythonファイルの起動部分は下記のような感じ。

from twisted.application import service, internet

-略-

log.startLogging(sys.stdout)

factory = MyFactory()
factory.protocol = MyServerProtocol

server = internet.TCPServer(9000, factory)
application = service.Application("my_httpd")
server.setServiceParent(application)

普通の場合のtwistedの起動は下記のような感じ。多少違いがある。


-略-

if __name__ == '__main__':

	log.startLogging(sys.stdout)

	factory = MyFactory()
	factory.protocol = MyServerProtocol

	reactor.listenTCP(9000, factory)
	reactor.run()

起動するときのコマンドと引数は


# /usr/bin/twistd3 -l /var/log/server.log -y /home/nakahira/twisted/test-server-d.py

という感じで実行するとプロセスとしてバックグラウンドとして実行される。公式ドキュメントではアプリケーションとして実行するという風な解説があったが詳しくはよくわからない。実行したtwistedのプログラムを止めるときはpsコマンドで当該のプロセスを探して直接killするようにしている(私の場合)

パート16: Twisted をデーモン化する

-Tips

執筆者:


comment

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

リッチテキストボックスに左余白を設定する

備忘。右画像のようにテキストボックス内に左余白を設定する。リッチテキストボックスのプロパティパネル内を見渡しても左余白を設定するプロパティは見つからなかった。右余白については、RightMarginと …

楽天ひかり回線でのipv6対応ルータを使った自宅サーバ環境の構築についての雑文

単なる雑文。誰かの参考になるかどうかは不明。 楽天ひかりを契約してPPPOEによるipv4でのネット接続は問題なく運用できていたが、速度面で不安定なため高速なネット環境を実現したかったので新しくipv …

no image

jdbc はこのコンテキストにバインドされていません

java.lang.Exception: failure:名前 jdbc はこのコンテキストにバインドされていません JAVA/Tomcatでまたこのエラーが発生した。Tomcatとmysqlを接続す …

no image

xreaサーバーの管理画面からphpMyAdminにログインできない

2~3日嵌った。管理画面に書いてある説明が悪すぎる。なんどphpMyAdminにログインを試みても、 エラー #1045 – Access denied for user ‘n …

Pythonのメリット・デメリット

ラズベリーパイで遊んでいると避けては通れないプログラミング言語のPythonについて思ったことを記してみる。 メリット 低スペックマシンでも動く ラズベリーパイでも 開発がやりやすい コンパイルしなく …