Most of my Linux application architectures are really a collection of processes which are started at boot and need be maintained in case something unexpected occurs. Long ago I started with daemons, but also learned and developed a few additional concepts.
The links have changed over the years, but if you search for "linux daemon" and go down some of the search results, you'll find similar entries as:
http://www.netzmafia.de/skripten/uni...mon-howto.html...