Massoud Mazar

Sharing The Knowledge

NAVIGATION - SEARCH

C# code to play PCAP capture of HTTP request

If you have been involved in troubleshooting web applications providing APIs to clients, you know how easier it is to have the actual request sent from client and be able to replay that against your server code to find the problem. Tools we use in my team is WireShark and NCAT. When QA team finds a problem, we always ask for the WireShark capture of the communication. More...

IIS URL Rewrite and double counting ASP.net 4.0 requests

I'm heavily depending on ASP.net performance counters to keep track of web application activity. After years of using IIS URL Rewrite to rewrite ASP.net 2.0 applications with no issue, we upgraded to ASP.net 4.0 and suddenly noticed a 100% jump in number of requests processed per second. I did a lot of search to understand why and could not find anything. More...

SQL server vs AppFabric Cache: Performance and Memory consumption

There are many great articles on the internet comparing MS SQL server and AppFabric, and all of them show how AppFabric has better performance over SQL server. It is completely understandable that with complex queries, AppFabric would out perform SQL server. But in an environment where you have a huge number of very small objects to be cached and looked up, AppFabric shows very weak results. More...

Passing parameters to a custom Web Deployment Provider

Recently I spent numerous hours trying to find out how I can pass more parameters than just a path to my custom Deployment provider. It is amazin how simple it is when you finally find the solution. In my case, I needed to send a key-value pair from my C# code to the provider, so it can find the key in a config file and change the value for me. Here is the code for the calling program:More...

Using Web Farm Framework to get list of Servers

Information about Web Farm Framework API is hard to find, so I think this may help some others like me who are interested in using WFF and web deploy APIs.

In this case, I wanted to get a list of all servers in a particular Web Farm and then push a file to all of them.

First step is to add references to these libreries in your project:

Microsoft.Web.Deployment
Microsoft.web.Farm 

The DLLs for these libraries are located in respective folders under C:\Program Files\IIS

I used the following helper methods to do what I needed.More...

Using SQL Server 2008 Reporting Services (SSRS) with MySQL

SQL Server Reporting services provides a decent reporting framework, and in 2008 release of SQL server, it is even better than previous versions. SSRS allows you to use many different types of data sources in your reports, but when I decided to add some reports with MySql sources, it was lacking data source type for it. With some research on the net, I realized it should be possible to add MySql data sources to both Visual Studio report designer and to the reporting services itself. More...

Monitoring hadoop data nodes using nagios

if you already have nagios setup to monitor your servers, it's a good idea to use it to monitor your hadoop data nodes as well. you can use nrpe to call your dfs monitoring plugin. I found this blog post about setting up nrpe on CentOS extremely useful. The only trick to get it to work was to also setup rpmforge repositories for yum, so it finds the nrpe packages (nagios-nrpe and nagios-plugins-nrpe). 

The next step was to add monitoring script for hadoop dfs, which I found here. Since I was using hadoop 0.20.2, I had to make some changes to the script to correctly parse values out of the dfs report:More...

Setting up Hadoop/Hive to use MySQL as metastore

In a previous post I showed how to setup Hadoop/Hive to use Derby in server mode as the metastore. Many believe MySQL is a better choice for such purpose, so here I'm going to show how we can configure our cluster which we created previously to use a MySQL server as the metastore for Hive.

First we need to install MySQL. In this scenario, I'm going to install MySQL on our Master node, which is named centos1. More...

setting up hadoop/hive cluster on Centos 5

If you are reading this post chances are you are trying to setup a hadoop/hive cluster. I hope these instructions save you some time with your installation.

Install CentOS:

I assume you are starting from scratch and want to setup a small cluster with minimum OS components (as far as I could minimize it). To start, download the OS setup media, and boot each machine with it. Go through the More...

CSS Friendly Menu, Problems with Chrome and IE6

After realizing that asp.net menu is generating a huge HTML and causes the application pages to be large and slow, I decided to use CSS friendly control adapters. It reduced the page size by 50 KB, but I had some challenges to get it to show the way I wanted it. Here I want to share some of the things I learned along the way:More...