I'm planning to build a daemon that uploads monitoring data to an online service. Customers will install the daemon on the computers they wish to monitor. I'm looking for advice on the best language / platform to use. Criteria (in roughly descending importance):
* Minimal setup hassle for our users, across all commonly used Unix (especially Linux) variants. This argues for a language for which most users will have the runtime already installed, or failing that, trivial to install from their package manager.
* Good basic libraries for filesystem and network access, including HTTP+SSL.
* Stable -- can expect to run for months at a time without hiccups or memory leaks.
* Reasonable performance -- e.g. able to read 1MB/sec of data from disk, lightly massage it, compress it, and push it to the network, with a fraction of a CPU core.
* Reasonable memory overhead. (Preferably able to run a 5000-line program, using libraries such as HTTP and SSL, and working with ~1MB of objects, in ~10MB of RAM.)
* Portable to Windows and OS/X without undue difficulty.
Anyone with experience deploying a background daemon across multiple OS configurations? Two obvious candidates seem to be Python and Java. Java would be more convenient for us, but I wonder if Python might be better for ease of installation, and perhaps memory overhead.