Prev: Hello
Next: the ball needs a kick...
From: Tim Chase on 9 Jul 2010 20:23 On 07/09/2010 06:32 PM, Roy Smith wrote: >> i have been asked to guarantee that a proposed Python application will >> run continuously under MS Windows for two months time. And i am looking >> to know what i don't know. > > Heh. The OS won't stay up that long. While I'm not sure how much of Roy's comment was "hah, hah, just serious", this has been my biggest issue with long-running Python processes on Win32 -- either power outages the UPS can't handle, or (more frequently) the updates (whether Microsoft-initiated or by other vendors' update tools) require a reboot for every ${EXPLETIVE}ing thing. The similar long-running Python processes I have on my Linux boxes have about 0.1% of the reboots/restarts for non-electrical reasons (just kernel and Python updates). As long as you're not storing an ever-increasing quantity of data in memory (write it out to disk storage and you should be fine), I've not had problems with Python-processes running for months. If you want belt+suspenders with that, you can take others' recommendations for monitoring processes and process separation of data-gathering vs. front-end GUI/web interface. -tkc
From: Bruno Desthuilliers on 10 Jul 2010 12:23 Les Schaffer a �crit : > i have been asked to guarantee that a proposed Python application will > run continuously under MS Windows for two months time. And i am looking > to know what i don't know. (snip) > but none of this has anything to do with Python itself. i am sure python > servers have been running reliably for long periods of time, but i've > never had to deal with a two-month guarantee before. is there something > else i am missing here that i should be concerned about on the > pure-Python side of things? something under the hood of the python > interpreter that could be problematic when run for a long time? Zope is (rightly) considered as a memory/resources hog, and I have a Zope instance hosting two apps on a cheap dedicated server that has not been restarted for the past 2 or 3 years. So as long as your code is clean you should not have much problem with the Python runtime itself, at least on a a linux box. Can't tell how it would work on Windows.
From: John Nagle on 10 Jul 2010 14:54 On 7/9/2010 12:13 PM, Les Schaffer wrote: > i have been asked to guarantee that a proposed Python application will > run continuously under MS Windows for two months time. And i am looking > to know what i don't know. > > The app would read instrument data from a serial port, If the device you're listening to is read-only, and you're just listening, make a cable to feed the serial data into two machines, and have them both log it. Put them on separate UPSs and in a place where nobody can knock them over or mess with them. John Nagle
From: Alf P. Steinbach /Usenet on 10 Jul 2010 15:07 * John Nagle, on 10.07.2010 20:54: > On 7/9/2010 12:13 PM, Les Schaffer wrote: >> i have been asked to guarantee that a proposed Python application will >> run continuously under MS Windows for two months time. And i am looking >> to know what i don't know. >> >> The app would read instrument data from a serial port, > > If the device you're listening to is read-only, and you're just > listening, make a cable to feed the serial data into two machines, > and have them both log it. Put them on separate UPSs and in > a place where nobody can knock them over or mess with them. "The Ramans do everything in triplicate" - Old jungle proverb Cheers, - Alf -- blog at <url: http://alfps.wordpress.com>
From: sturlamolden on 10 Jul 2010 20:48
On 10 Jul, 02:23, Tim Chase <python.l...(a)tim.thechases.com> wrote: > While I'm not sure how much of Roy's comment was "hah, hah, just > serious", this has been my biggest issue with long-running Python > processes on Win32 -- either power outages the UPS can't handle, > or (more frequently) the updates Win32 is also the only OS in common use known to fragment memory enough to make long-running processes crash or hang (including system services), and require reboots on regular basis. Algorithms haven't changed, but it takes a bit "longer" for the heap to go fubar with Win64. (That is, "longer" as in "you're dead long before it happens".) For processes that needs to run that long, I would really recommend using Win64 and Python compiled for amd64. |