Archive

Archive for February, 2010

Quick setup of Iozone benchmarking tool

February 24th, 2010

Introduction

Iozone is an open source file system benchmarking tool which lets you to evaluate various aspects of a filesystem performance like read, write, rewrite, random read etc etc. It is ported to various platforms and can be run on all major operating systems like Linux, Microsoft Windows Mac OS X. Though it can be used for the detailed analysis of the filesytem IO performances, here we describe in short how to install it in Linux and get the analysis plotted to a graph.

How to install

1. Download the rpm source fro the Iozone from the following link or enter the follwing command at the command prompt

wget http://www.iozone.org/src/current/iozone-3-338.i386.rpm

2. install Iozone using the following command

rpm -ivh /path/to/iozone-3-338.i386.rpm

Now the filesystem benchmarking tool is installed. To verify the installation you can find the files of Iozone tool in the directory /opt/iozone/

Plotting a graph from Iozone analysis

For the plotting of a graph you should ensure that gnuplot is already installed in your machine. Gnuplot is a command-driven opensource function plotting tool. If it isn’t installed you may install it using the following command

yum install gnuplot

After ensuring that you have got gnuplot installed. Lets try plotting the analysis of the Iozone tool on a graph. Here we will analyze the filesystem with in auto mode. Run th iozone command and redirect its output to a file.

/opt/iozone/bin/iozone -a -g 4m > /tmp/test_analysis

In the above command we have set the maximum size of a file for auto mode  to 4mb with -g option. For brief study about Iozone commands use

/opt/iozone/bin/iozone -h

To generate the graph there is another command which is installed with the iozone tool ie Generate_Graphs. To plot the graph use the following commands

/opt/iozone/bin/Generate_Graphs /tmp/test_analysis

A new window will pop up with the plotted graph of the write performance. At the command line if you hit enter then new graph is plotted fro the rewrite performance. Thus there will be graph plotted for many IO performances as you hit enter each time. Evaluate the required IO performances from the set of graphs depending on the application that you are planning to deploy.

Have a nice day :)

VN:F [1.9.1_1087]
Rating: 10.0/10 (4 votes cast)
VN:F [1.9.1_1087]
Rating: 0 (from 0 votes)

Mobin Skariya linux , , , , ,

Email Feedback Loop (FBL)

February 20th, 2010

What is FBL

Usually when users do not want to receive any more mails from an email account they just click the “report spam button” available in their web mail or mail client. As a result of that a complaint will be raised against the ip from which this email is sent and the isp will start blocking this ip after the complaint rate increases a certain limit. So it is crucial to know the users who do not want to receive mails from us  so that we can remove them from the mailing list and mails will not be sent to these users again. A feedback loop is a mechanism whereby an ISP will let you know when one of its subscribers complains about your e-mail.

How to Sign up For Email Feedback Loop

To use this service, you should send a request for an ISP feedback loop either via email or through a web form. Most of the ips provide a web from to register their feedback loop program. The usual information you need to provide to sign up for a feedback loop are:

* IP addresses that you want to receive feedback loops for

* The list of domains you want to subscribe

* A valid abuse@ and/or postmaster@ email address on the domains you want to subscribe

* Your contact information: name, contact email and phone number

* The email address a feedback loop will be sent at

* Quantity of email messages sent daily (weekly, monthly) to the domain of the feedback look

* Type of email content you send

A confirmation email will be sent to the contact email address you specify. Once your request has been approved, Feedback Loop email will be sent to the email address listed in the “Feedback Loop Email” field.

How FBL Works

1. Sender sends a mail to the user

2. User complaints to his ISP about the message by hitting the report spam button

3. The sender  will be notified when a recipient complains about your email.

4. The sender will receive an email message saying something like “a spam complaint was registered for the IP address xxx.xxx.xxx.xxx”.

Sender’s original email message will be attached to that notification email.

Advantages of Feedback Loops

Feedback loops help you reveal unhappy subscribers, improve your email deliverability and decrease your spam complaint rate. This helps you to maintain a good reputation for the ips. Feedback loops allow you to check  deeply into your sign up process that adds user to their mailing list when one user signs up. Increased complaint rate can be caused by subscribers not realizing what they signed up for, subscribers not getting what they thought they signed up for, or a long delay between sign-up and the first mailing. So these feedback loops help the sending organization to improve the quality of their sign up process.

Different Feedback Loop Programs

Every ISP’s feedback loop is different, making the aggregate data sometimes challenging to manage. Some use a standardized format – the Abuse Reporting Format. Some send feedback in real time, others send in batches. Many send the entire offending message, others only provide the e-mail address – and still others send the body of the message but no address. For Yahoo only senders who sign their outbound emails with DomainKeys and/or DKIM are eligible to participate in their feedback loop program. AOL will only active the service after an ip ownership test.It verify that a particular domain has a right to receive abuse complaints for the ips in the submitted request. There are five possible tests to prove IP ownership. Passing any one of the five tests says “AOL, yourdomain.com has a right to receive abuse complaints on behalf of our IP.” Also different isps are providing options to modify the existing feedback loop. You may add more ips or remove existing ips through web forms. Also in any point if you do not want to use feedback loop service from an isp you may write to the postmaster department of corresponding isp for that.

Conclusion

This one-time action will help you keep a good email sender reputation and improve your email delivery rate into the recipient’s Inbox. So it is always better to have feedback loop.

VN:F [1.9.1_1087]
Rating: 8.5/10 (4 votes cast)
VN:F [1.9.1_1087]
Rating: +1 (from 1 vote)

Tino Thomas Mailservice ,

Installing Nginx with PHP-FPM on a Linux server

February 17th, 2010

Nginx (pronounced as Engine-x) is a high performance web server,reverse proxy, mail proxy server which was originally written by Igor Sysoev in 2005. Here we discuss about setting up a very basic nginx web server on your Linux server , capable of parsing php pages.

Installing Nginx on your Linux server

Installing nginx on your Linux server is very simple and even on the first try itself, you will not face any difficulties.

The steps that i have followed on my first nginx installation are given bellow (of course with the help of others tutorials and other resources available from net)


#(Change directory to /usr/local/src [ its a good practice to download and compile software's  from /usr/local/src ] )
cd /usr/local/src

#(download nginx source from "nginx.org")
wget http://nginx.org/download/nginx-0.8.33.tar.gz

#(Extract the source file )
tar -xzf nginx-0.8.33.tar.gz
cd nginx-0.8.33

#Now configure Nginx , here we are using the 2 basic configuration options
[ --sbin-path=/usr/local/sbin #the nginx binary path ]
[ --with-http_ssl_module      #Enables https module ]

./configure --sbin-path=/usr/local/sbin --with-http_ssl_module

since you have included the –with-http_ssl_module there is a possibility of getting the following error ( at least i got this error on a fresh centos machine since no pcre libraries were pre-installed on the system)

checking for PCRE library in /usr/include/pcre/ ... not found

checking for PCRE library in /usr/pkg/ ... not found

checking for PCRE library in /opt/local/ ... not found

./configure: error: the HTTP rewrite module requires the PCRE library.

You can either disable the module by using --without-http_rewrite_module

option, or install the PCRE library into the system, or build the PCRE library

statically from the source with nginx by using --with-pcre=
option.

If you get the above error while configuring nginx , please download pcre (Perl Compatible Regular Expressions) from “http://www.pcre.org/” and change the nginx configure command as given bellow

Read more…

VN:F [1.9.1_1087]
Rating: 9.7/10 (3 votes cast)
VN:F [1.9.1_1087]
Rating: +1 (from 1 vote)

Vishnuprasad R linux ,

Issues with ImageMagick/Mod_perl/Html::mason

February 11th, 2010

Today, i was working with a web-based mod_perl application running on an old rhel 2.1 (panama) server, with apache v1.3.33 and mod_perl v1.29.

The applctn had an option to upload images for the products displayed on the site. But the app lacked image resizing functionality. Some of the users had uploaded huge images and that went beyond the site borders. I was about to integrate the resizing function using perl’s Image::Magick module. Existing module was out-dated, so i went for an upgrade. Obviously, it was not a quick and easy upgrade.

For the code snip

$image = Image::Magick->new;
$x = $image->Read($imgname);
if($x eq '')
{
$image->Resize( geometry => '800x800' );
$image->Write($imgname);
}

The first error i met was

Can’t load ‘/usr/lib/perl5/site_perl/5.6.1/i386-linux/auto/Image/Magick/Magick.so’

i ran ldd command on Magick.so, and libMagick.so link was found broken

ldd /usr/lib/perl5/site_perl/5.6.1/i386-linux/auto/Image/Magick/Magick.so
libMagick.so.6 => not found

So downloaded ImageMagick-6.2.3-6.tar.gz and reinstalled ImageMagick.

For a successful compile, i had to comment the following lines in /usr/src/ImageMagick-6.2.3/magick/annotate.c

//      if (LocaleCompare(encoding,"Latin-1") == 0)
//        encoding_type=ft_encoding_latin_1;

because ( i guess ) the machine lacked that font.
After that, the app threw another error
Wrong JPEG library version: library is 62, caller expects 70

This was fixed by relinking libjpeg.so.62 to libjpeg.so.7.0.0. I know its dirty, but that did the trick.

Hope, mod_perl/mason players will find this useful.

VN:F [1.9.1_1087]
Rating: 5.5/10 (2 votes cast)
VN:F [1.9.1_1087]
Rating: 0 (from 0 votes)

Shameem Khalid linux , ,