I think that more hosters are now checking for concurrent connection limits like 1and1 is doing, so this may become a more common problem, especially for enthusiasts who run multiple weather software packages (like me).
I use Weather-Display (with some stuff from WeatherLink) to run my main site, but also have multiple weather software running (mostly for testing with the template sets). So my main site has:
Weather-Display (1 connection for clientrawrealtime uploads, 1 connection for main WD ftp)
GRLevel3 (1 connection)
WASP2 (two instances, 1 connection each)
Cumulus (1 connection for realtime FTP, 1 for main files FTP)
Fling supports (with 1 connection) uploads from WeatherLink, VWS (including wflash realtimes), MeteoHub, WeatherSnoop, WeatherCat as needed.
The issue with Fling was a steady consumption of non-pagable memory which used to cause a system crash every 3 days or so. I couldn't find a fix from the vendor, so I did a small Perl script to run via Windows Scheduler to check the memory for the Fling task every 5 minutes, and kill the Fling system task when it exceeded 16Mb. It auto restarts after the 'kill' so no data is lost, but the non-pagable memory is freed up by the kill
Now my system stays up until reboot after the Microsoft 'black tuesday' patches are installed each month.
Don't know if this will help your issue, but I offer the script I'm using for Fling kill.
You'll need ActiveState's Perl (
http://www.activestate.com/activeperl/downloads ) installed,
Microsoft's pslist and pskill commands from the PsTools set (
http://technet.microsoft.com/en-us/sysinternals/bb896649 )
And to set up a Scheduled Task to run the zap-fling.pl at your desired interval.
zap-fling.pl:
#!/usr/bin/perl
#
# use the pstools to find the current NP memory for fling, and optionally
# use pskill to zap it to release the held memory
#
# K. True - 30-Oct-2011
#
# Run via Windows Scheduler or Linux cron .. all output is to the log file(s)
#
# ---- configurable settings ----
$maxMem = 16384; # amount in KB that we'll tolerate
$logsDir = "./fling-logs/"; # place to store the YYYYMMDD.txt
# ---- end of configurable settings --
#
$|=1; # no buffering of output
$cur_time = time();
@months = ("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
$log_filename = ISO_datestamp($cur_time) . ".txt";
$nice_date = nice_datestamp($cur_time);
open (OUT,">>${logsDir}${log_filename}");
open(PS,"pslist -m fling |") || die "..unable to run pslist $!\n";
while (<PS>)
{
#print $_;
$rec = $_;
($name,$PID,$VM,$WS,$Priv,$PrivPK,$Faults,$NonP,$Page) = split(/\s+/);
next unless $Page =~ m/\d+/;
#print STDOUT "$name\t$PID\t$NonP\n";
print OUT "$nice_date\t$rec";
print STDOUT "$nice_date\t$rec";
if($NonP >= $maxMem) {
print OUT "$nice_date\t$name PID=$PID pskill for $NonP > $maxMem KB\n";
print STDOUT "$nice_date\t$name PID=$PID pskill for $NonP > $maxMem KB\n";
open(PK,"pskill $PID |") || die "..unable to run pslist $!\n";
while (<PK>) {
print OUT "$nice_date\t$_";
print STDOUT "$nice_date\t$_";
}
print OUT "$nice_date\t-------------------------------------------\n";
print STDOUT "$nice_date\t-------------------------------------------\n";
}
}
# ------ end of main program -----
sub nice_datestamp {
my $d = shift;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($d);
my $nicedate = sprintf(
"%02d\-%s\-%04d %02d\:%02d\:%02d",
$mday,$months[$mon],$year+1900,$hour,$min,$sec);
return("$nicedate");
}
sub ISO_datestamp {
my $d = shift;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($d);
my $nicedate = sprintf("%04d%02d%02d",$year+1900,$mon+1,$mday);
return("$nicedate");
}
You'll need a ./fling-logs/ directory to store the YYYYMMDD.txt files created by the script which contains the log of the activities so you'll see when fling gets zapped. I've attached a sample from my system.
Hope this helps...
Best regards,
Ken