What is the de facto library for creating Python Daemons

喜欢而已 提交于 2019-12-03 06:44:30

问题


I am attempting to use the python-daemon library which seemed to me to be the safest way to create a Daemon without forgetting anything. The documentation is quite poor, being just PEP 3143.

On the other hand, I have found a lot of links to Sander Marechal's A simple unix/linux daemon in Python. This looks to be a nicer solution or though I have not yet attempted to use it.

Edit: I have used Sander Marechal's solution and it seems to work nicely.


So what is the de facto way in the Python community to create a Daemon, is it one of these libraries, or simply doing it all yourself (forking twice etc.)?

Also, you would think that any library with a PEP would be a far better choice since it is closer to a comprehensive way of creating a Daemon (or at least a more standard way) than any other solution. So what is the deal with this python-daemon package, would it ever be included in the standard library?


回答1:


I went with Sander Marechal's A simple unix/linux daemon in Python, it is simple, and you work with it by creating a subclass and overriding the run() method, which feels a very natural way to do things (rather than the with context: approach of the python-daemon module.




回答2:


Twisted comes with twistd.

http://twistedmatrix.com/documents/current/core/howto/basics.html

You can wrap your application as a plugin for twistd.




回答3:


For making a daemon program that will work correctly with the various runners in operating systems (e.g. init, systemd, launchd), the python-daemon library is the de facto way to write just the daemon part and let the operating system do the rest of the job correctly.



来源:https://stackoverflow.com/questions/4790876/what-is-the-de-facto-library-for-creating-python-daemons

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!