Liip is hiring again
If you don't read the Liip Blog (why don't you?), then read this post.
Please sign up quickly, we got (too!?) much [cool] work to do and I don't know how to plan my holidays (yet) ;)
Please sign up quickly, we got (too!?) much [cool] work to do and I don't know how to plan my holidays (yet) ;)
NetNewsWire Lite vs Vienna memory usage
Today I tried to optimize my memory usage a little since OS X is swapping a lot. I switched from Vienna to NetNewsWire about two months ago because Vienna used to crash a lot, what seems to be fixed now. I decided to test which one uses less memory and just use that.
Both clients are scanning the same ~100 feeds every 30mins. For the test I will mark every entry as read "one by one" (vie space key) and don't use the flag features etc. (not available in NetNewsWire Lite anyways). I started to monitore the memory usage like that:
Soon I realized that output wouldn't be easy to plot, then I decided to write a little script and run it via launchd every 30s. Here is the code:
And that's the Result:

As you can see the memory usage is nearly the same and both are slowly consuming more memory over the time (24h - some hours in hibernate).
Conclusion:
Both clients are scanning the same ~100 feeds every 30mins. For the test I will mark every entry as read "one by one" (vie space key) and don't use the flag features etc. (not available in NetNewsWire Lite anyways). I started to monitore the memory usage like that:
echo "`date +%s`;`ps cux | egrep 'Vienna|NetNewsWire' |\
awk -v ORS=';' '{print $11 ";" $5 ";" $6}'`"
Soon I realized that output wouldn't be easy to plot, then I decided to write a little script and run it via launchd every 30s. Here is the code:
#!/bin/bashUse it like that:
echo -n "`date +%s`;"
for arg in "$@"; do
MEM=`ps cux | grep $arg | awk '{print $5 ";" $6 ";"}'`;
if [ -z $MEM ]; then
echo -n ";;";
else
echo -n $MEM
fi
done
memory.sh NetNewsWire ViennaAfter 24h of data collection I decided to stop the test and see the result. I like gnuplot to visualize my data so here is the setup:
set terminal png
set output rss_readers.png
set key top left box
set ytics 2.5
set grid y
set ylabel 'MB Memory'
unset xtics
set datafile separator ';'
plot "memorystats.txt" using ($3/1024) title 'NetNewsWire Lite' with lines,\
"memorystats.txt" using ($5/1024) title 'Vienna' with lines
And that's the Result:
| Low | High | Average | |
|---|---|---|---|
| NetNewsWire Lite | 20.16 | 68.00 | 44.59 |
| Vienna | 22.96 | 68.35 | 41.28 |

As you can see the memory usage is nearly the same and both are slowly consuming more memory over the time (24h - some hours in hibernate).
Conclusion:
- Missing data on the time axis (hibernate hours) sucks. I can probably do a little more tuning with gnuplot but didn't try to manipulate axes by now. [Give me a hint if you're good with gnuplot, I'd like to just skip those parts in the axis.]
- Both RSS Readers are consuming nearly the same amount of memory, growing over time.
- After having Vienna back for the first couple of hours I already decided to prefer it over NNW Lite. I regularly missed the search and flag functions.
Start memcached with SystemStarter
I used to start Memcached via launchd for a while now. Today I realized that it will use a lot (128MB) of memory after running a couple of days. I searched after a better solution and found this script which will start memcached via StartupItems/SystemStarter.
What I do now is reload Memcached every hour via launchd to purge the memory.
What I do now is reload Memcached every hour via launchd to purge the memory.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>local.server.restartMemcached</string>
<key>ProgramArguments</key>
<array>
<string>SystemStarter</string>
<string>restart</string>
<string>Memcached</string>
</array>
<key>StartInterval</key>
<integer>3600</integer>
</dict>
</plist>
Ganz grosses Kino bei local.ch
Am Mittwoch ging ein neues Release von local.ch online, nebst einigen Änderungen und neuen Features ist wohl die Umkreissuche die coolste Funktion.
Vor kurzem hat unsere Stammküche, das Rossi, die Küche geschlossen und wir suchen uns per local jeweils ein neues Restaurant in der Umgebung. (Der neue Firmenname ist leider bei Directories noch nicht geändert)
Ich freue mich in nächster Zeit weitere Features zu implementieren und benutzen :)
Vor kurzem hat unsere Stammküche, das Rossi, die Küche geschlossen und wir suchen uns per local jeweils ein neues Restaurant in der Umgebung. (Der neue Firmenname ist leider bei Directories noch nicht geändert)
Ich freue mich in nächster Zeit weitere Features zu implementieren und benutzen :)
1-10/10






