QWANtify is excited to announce, effective May 1, 2010, their purchase by Safe Bridge Solutions, Inc. of Madison, WI. Read More »

Performance - Part 6

Performance Tuning – The end of the beginning

When I started these posts I did not want to end up with a list of “If you have problem X then do Y”. Unfortunately, I have used information like that and its usually been wrong. Instead, I wanted to pass on the the process of how I do performance tuning hoping it will help someone else. The tools, the metrics, the patterns don’t do you any good if you do not know how to apply them. If you don’t understand “you don’t know what you don’t know” then you’ll probably stumble around and may never find the cause of the problem and just point at something like the database telling people it’s the databases fault. If you are a persuasive person you’ll get everyone to believe you and your company may spend millions of dollars on hardware and software to upgrade the database. Congrats you’ve probably just made the project a financial failure. If the database is truly the problem you should be able to go to the database team and show them what specific SQL calls are slow. Maybe the data model is messed up or the application is doing way more commits than any database can handle or maybe the database just needs to have the indexes rebuilt or it’s statistics updated.

You are going to be wrong some of the time. Accept it. Don’t hide it. Tell people what you have learned from it. If you were wrong because your biases then reflect on that. Maybe your biases need to be changed.

Finally at some point people are going to ask you when you will be done. Performance tuning is science you do not know how long it will take, but you can still give them your current plan. Just be up front and tell them it will probably change. List the tests and if possible changes you think you are going to have to do now and don’t worry about having to change it. Show dependencies where you can. When you do change the plan you will have the data to support the change and will have a better understanding of the system then so you don’t have to make up far reaching excuses on why you can’t at least give them a game plan now. Again communicate often and highlight the major metrics of the goals so people know if you are close or not. If a deadline is coming up raise the flag if you don’t think you will meet it. Again you have data to back you up. If you are fired for that do you really want to work for a company like that?

Hopefully these posts have affected you in a positive way. Just like Babylon 5 affected me. Thanks againJMS. If there are specific questions/problems you are having feel free to contact me.

WAIT! One last thought: Everyone’s a hero in their own way, in their own not that heroic way. Now go out there and be heroic and I hope you never hear the evil death whinny.

-Kevin

Filed in: Team Member Blog Comments (0)

Comments

There are no comments for this entry.

Comment Form

Fields marked * are required.

Name:*

Email:*

Comment:

Notify me of follow-up comments?

Please enter the answer to the question below:

What is the day after Monday?