Archive for August, 2009
The Difference Between an Apple and Microsoft Upgrade
Like a good little Apple fan, I went out and purchased a copy of the new Snow Leopard OS from my local Mac store yesterday. I got it home, popped open the box, popped the DVD into my MacBook, told it to upgrade and in 45 minutes or so I was playing with the new features of Snow Leopard. This really was my first operating system upgrade as an Apple fan and I have to say I was impressed. I was an Apple fan before the Leopard release, but I didn’t do an in-place upgrade for other reasons at the time.
Why is this cool or even worth noting? Because that was all I did. I didn’t look at some chart to see which copy of Snow Leopard was right for my computer. I didn’t have to double-check that I was running the 32-bit version instead of 64-bit. I didn’t run my computer and peripherals through some software to make sure they were compatible. All I cared about was that I had a MacBook running Leopard, so I purchased Snow Leopard and popped the DVD in the drive. And guess what? My computer now runs faster! In fact, I am now using something like 6 GB less disk space than before.
The other cool part was that I didn’t reinstall any software, nor did I re-activate anything. Unlike doing an upgrade with Microsoft software involved, I wasn’t treated like a pirate and required to jump through hoops to use my software again. I just loaded it again. The user experience from the store to upgrade complete was very smooth and straight-forward.
While it’s certainly true that the upgrade from Leopard to Snow Leopard was far less of a jump than Windows XP to Vista or even Vista to 7, but it really doesn’t matter. I had to put far less care into the upgrade and just did it. And that (among a few other things) is why I do, and will continue to do for the foreseeable future, recommend Apple products to those who ask me their opinion on what computer to buy.
Related Posts- Upgrade to Windows 7 Because.. It Sucks Less? Well, after a busy couple of months I'm finally back....
- Psystar Tries Again Once again, Psystar is going after Apple, this time a...
- Adobe Bringing Flash to More Platforms It seems that Adobe is seeing the threat of Microsoft...
- Ballmer On the Separation of Software and Hardware In another part of the recent the Churchill Club event...
- Break Now to Fix Later..? Zapatero's government and few other actors will subsidy a purchase...
- Backcountry Skiing in the Spring One of the ways to get the most out of...
- Legal Action Today I filed a lawsuit in Hudson County, NJ against...
- How to Fix a Computer Loaded with Spyware /caption]Along with the modern conveniences commonly associated with today's computers...
Tags: apple, microsoft, os x, snow leopard
Filed under Tech Trends :
Comments (4) :
Aug 29th, 2009
Running LAMP Applications Using Nginx
While playing with WordPress on nginx for my last post, I discovered that a majority of the how-tos out there on running PHP/MySQL applications using nginx left a bit to desired. Here’s the steps that I took to get my application (WordPress, specifically) working.
Install nginx, MySQL, and PHP
First, let’s install nginx and PHP along with a few PHP libraries:
sudo apt-get install php5-mhash php5-mysql php5-odbc curl php5-curl php5-gd php5-imap nginx php5-cgi php5-cli php5-common
If you didn’t already have MySQL installed on your server, you’ll need that too:
sudo apt-get install mysql-server
The installer will prompt you to enter a root password. Make sure it’s a fairly good password, but also be sure to record it as you’ll need it later.
Install spawn-fcgi
Spawn-fcgi used to be included with lighttpd, but has been moved to its own project, so it can be downloaded separately. Unfortunately, the spawn-fcgi project is not in the Ubuntu repositories, so it has to be installed separately. First, download the tarball from the spawn-fcgi project page. As of this writing, it’s on version 1.6.2. For this particular version, run the following from a directory your user can download to:
wget http://www.lighttpd.net/download/spawn-fcgi-1.6.2.tar.gz
Untar it:
tar zxf spawn-fcgi-1.6.2.tar.gz
Make sure you have the compilation tools:
sudo apt-get install build-essential
Now, navigate into the spawn-fcgi download directory and compile:
cd spawn-fcgi-1.6.2
./configure
make
Now, let’s install it into /usr/bin:
cd src
sudo cp spawn-fcgi /usr/bin/
Now, let’s make the init script. Copy the following example into /etc/init.d/fastcgi:
#!/bin/bash
PHP_SCRIPT=/usr/bin/php-fastcgi
RETVAL=0
case "$1" in
'start')
$PHP_SCRIPT
RETVAL=$?
;;
'stop')
killall -9 php5-cgi
RETVAL=$?
;;
'restart')
killall -9 php5-cgi
$PHP_SCRIPT
RETVAL=$?
;;
*)
echo “Usage: php-fastcgi {start|stop|restart}”
exit 1
;;
esac
exit $RETVAL
Next, let’s create the script to launch the PHP CGI process. Copy the following example text into /usr/bin/php-fastcgi:
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi
Make sure the new scripts are executable:
chmod +x /usr/bin/php-fastcgi /etc/init.d/fastcgi
You should be able to start up your fastcgi process now with the following:
/etc/init.d/fastcgi start
Make the fastcgi process start at boot:
sudo update-rc.d fastcgi defaults
Setup nginx site
I used the following as my site file. A majority of it was taken from the default site and parts from other how-tos. You can rewrite the /etc/nginx/sites-available/default with this templated page (in my example, I assumed that the site is called site.com and that you are using WordPress at /var/www/wordpress). Be sure to change the “root” and “SCRIPT_FILENAME” lines.
server {
listen 80;
server_name site.com;
access_log /var/log/nginx/localhost.access.log;
location / {
root /var/www/wordpress;
index index.php;
if (-f $request_filename) {
expires 30d;
break;
}
if (!-e $request_filename) {
rewrite ^(.+)$ /index.php?q=$1 last;
}
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/nginx-default;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_FILENAME /var/www/wordpress$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}
Before restarting nginx, make sure everything is cool with the config and correct any errors:
sudo nginx -t
Now, restart nginx with the new changes:
sudo /etc/init.d/nginx restart
Install your application
You can now install your application as you normally would using Apache. In this example, you can download the WordPress packages to /var/www/wordpress and install from there, making sure that the files are owned by the www-data user.
- VMware Server 2 on Ubuntu 8.10 Apparently all the bugs with running VMware on Ubuntu 8.04...
- Parallels 4 vs. VMware Fusion 2 Parallels recently released version 4 of their desktop virtualization software...
- 2X App Server Client on 64-bit Ubuntu Today I got to replace my aging Ubuntu desktop with...
- PHP Apps: Apache vs Nginx I've always read (and witnessed) that nginx is a far...
- Installing a Pet Door Installing a unique door for your dog or your cat...
- How to Fix a Deadbolt Lock Through Replacing [/caption]Having a quality deadbolt lock on your door can be...
- Your own webserver with database and PHP in 2 minutes. Download and install the Apache Web server including MySQL and...
- Work at Home Scams on the Rise While surfing the net I saw a great question posed...
Tags: nginx, ubuntu
Filed under How-Tos / Tips :
Comments (0) :
Aug 29th, 2009
PHP Apps: Apache vs Nginx
I’ve always read (and witnessed) that nginx is a far more efficient web server than Apache. In fact, people are noticing in vast numbers as evidenced by the latest numbers from Netcraft on web server market share. nginx market share has exploded out of nothing in the past couple of years (it’s only been around since 2005). nginx uses less memory and it much lighter than Apache, so for obvious reasons, it has become very popular. It is incredibly fast and powerful as an http and mail proxy, but just how does it do as a stand-alone PHP application server?
For myself, I wanted to know if Wordpress would run faster on an nginx or Apache server. There are plenty of how-tos out there on setting up nginx to use fastcgi for PHP applications, so I won’t go into that, but I happened to use this one.
For my little test, I used Apache Bench (ab) on a separate machine attached to the same switch. I took four tests and averaged the total time to complete the requests given by the output of Apache Bench. Below is a test of 100 requests one at a time (total time in seconds, lower is better):

That wasn’t at all what I was expecting. It wasn’t any different at all, really. The numbers were: 40.00 seconds for nginx and 40.04 for Apache. Add a little roundoff error in there and we really can’t say much about the results.
The numbers get a little more interesting when I start adding a little concurrency:



Definitely a trend, but even at 40 concurrent connections it’s not really anything worth writing home about. With a little tweaking I’m sure the concurrency issue can be throw into a whole ‘nother direction, but I just took what came out of the “box”.
Another interesting thing that I noticed was the memory usage between the two. With Apache, the web server used 23400K of memory. nginx used significantly less memory than that weighing in at a measly 4356K. However, since it can’t interpret PHP on its own and uses fastcgi, we have to add that in as well. That adds 19228K of memory, totaling 23584K, slightly more than Apache!
Apache and nginx seem to be almost the same when being used to run straight PHP applications. If you’re looking for a lighter-weight straight application server for PHP, I probably wouldn’t look any further than the LAMP stack since it has been made extremely easy to install and configure on popular Linux distros. Start adding load balancing, web proxies, mail proxies, and fault tolerance and then I’d start looking at nginx. Otherwise, I’ll be sticking with Apache for my PHP apps for now.
Related Posts- Microsoft: Most Users are 'Starters' Microsoft has announced that it will be selling Windows 7...
- Apple, Linux, and PHP in the Top List of Vulnerable Vendors Cnet recently posted an article titled "Apple, Microsoft, PHP headline...
- Zimbra Desktop Added to Ubuntu Repositories Everyone's favorite offline mail client was added to the Ubuntu...
- Google Chrome Performance: Real Numbers! Despite all of the chatter on the web in the...
- Developing WordPress Plugins on Windows using WAMP, Cygwin and Aptana Studio Developing WordPress plugins is not very difficult, in theory. PHP...
- Inexpensive Web Hosting - Top 12 Reviews Inexpensive Web Hosting. We have compiled a detailed list of...
- Wordpress Backup Wordpress Backup is an essential plugin for all Wordpress blog...
- Tips for Improving Number of Blog Visitors All bloggers are looking for ways that they can improve...
Tags: apache, nginx
Filed under Uncategorized :
Comments (0) :
Aug 21st, 2009
Linux Vendors: United They Will Stand?
Ever since reading OStatic’s article about how Linux netbook returns really aren’t the problem with Linux market share, I can’t seem to quite get over the conclusion. They make an excellent point. Microsoft has lots of money and can afford to throw a lot of it at marketing. And Linux vendors? Not so much. To ‘requote’ (RQ?) Joe Brockmeier from Novell:
“If you took the marketing budgets of all the Linux vendors combined, and then doubled that figure, and then added a zero, you might start approaching what Microsoft spends on marketing Windows. Maybe.”
Wow. That’s one heck of a deficit to overcome. The funny thing about the software business is that as long as your technology is ‘good enough’, often that’s all it takes. From there it’s marketing. It’s sad, but true. It’s not that one has to match dollar-for-dollar, but that’s certainly not a difference that’s easily compensated for.
Okay, so there’s a problem. What’s the solution? Let’s read on in Brockmeier’s quote:
“The ad councils for various industries have the right idea — it’s a good idea to pool your money to grow the market when you’re jointly competing with another industry.”
This is where I have to disagree. Pooling money for marketing from Canonical, Red Hat, and Novell (and perhaps some lesser-known Linux vendors) for the benefit of whom? Linux? What Linux? Ubuntu? Red Hat? SUSE? If I were a Red Hat shareholder, I wouldn’t exactly appreciate my dollars being spent marketing ‘Linux’. While I like Linux, Red Hat needs to market Red Hat.
Is this what Linux has come to? A charity that vendors can pool their money into with the hopes of getting something out of it? Now, it is true that these vendors rely upon Linux upstream to have a product to sell, but as long as there are differences in distributions, there will be different marketing strategies. And that’s for good reason. Ubuntu is popular on desktops and laptops. Red Hat is not. In fact, Red Hat appears to not even care about the desktop market. SUSE fits somewhere in the middle there.
Can the three combine marketing strategies? Maybe. While I definitely like the idea of Linux dominating both the server and client operating system market shares, I would hate to see tension created between vendors because advertising doesn’t help out each equally. That would just serve to hurt all three. As a community, Linux vendors can’t even agree on a sound subsystem, let along a marketing strategy.
Related Posts- Windows Marketshare Drops Below 90% The monthly browser and operating system marketshare report from Net...
- Mac vs PC: A real comparison Microsoft is revving up its FUD engine once again. This...
- Running Commands as Another User in a Script There's plenty of situations where you need to to open...
- The Evolving Intuit I've been noticing lately a great trend in Intuit that...
- Turnkey to Affiliate Program Success - Grow Your Online Business Using Affiliate Management Services Business of the modern times is getting more complex with...
- Blogging for Money Guide Blogging for money is quickly becoming one of the more...
- Accordion 101 The accordion is closely related to another instrument, the concertina....
- Market Falling, and now I'm in the market Well, now it's not just the US economy that's going...
Tags: linux, microsoft, novell, red hat, ubuntu
Filed under Tech Trends :
Comments (0) :
Aug 16th, 2009
2X App Server Client on 64-bit Ubuntu
Today I got to replace my aging Ubuntu desktop with a new machine. We’ve been using 2X for some time to run Windows apps on our Macs and I was pumped a few months ago to figure out that they had packaged a new version of their client for Ubuntu (well, Debian but it works on Ubuntu).
When I got up and running, I went to install the 2X client again:
wyatt@host:~$ sudo dpkg --install 2XClient.deb
[sudo] password for walterw:
dpkg: error processing 2XClient.deb (--install):
package architecture (i386) does not match system (amd64)
Errors were encountered while processing:
2XClient.deb
Wrong architecture. Dang.
Not to worry! 2X also distributes the binaries in a tarball so, using the 32-bit libraries, one can just run the binaries.
First, download the tarball. You can download it using your browser from their downloads page, or from the terminal via:
wget http://www.2x.com/downloads/AppServer-LoadBalancer/2XClient.tar.bz2
Untar it:
tar jxf 2XClient.tar.bz2
Copy the contents to /opt:
sudo cp opt/2X /opt/
Install the ia32libs:
sudo apt-get install ia32-libs
You can then create a launcher within the Gnome menu or whatever desktop manager you want.
To create the launcher, the command to start the client is:
/opt/2X/Client/bin/2XClient

Create 2X Client Launcher
That’s it! The 2X client should launch and run beautifully.
Related Posts- Zimbra In an Hour After spending a great deal of time the Zimbra forums...
- Ubuntu: So Easy a 10 Year-Old Can Do It Okay, this "Linux is hard" FUD is driving me insane....
- Chrome: A 'Web OS'? With all the hype surround Chrome lately, one thing that...
- The Evolving Intuit I've been noticing lately a great trend in Intuit that...
- Google SEO for WordPress Blogging If you have been in the internet marketing scene at...
- Refurbishing Old Computers With Ubuntu Linux I currently have two laptops, an old 2002-era Gateway and...
- Triathlon Training 101 Given your background, do you know which triathlon training program...
Tags: ubuntu
Filed under Uncategorized :
Comments (0) :
Aug 12th, 2009


